delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2004/05/24/00:48:18

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
Date: 24 May 2004 07:49:48 +0200
Message-Id: <ud64u8jcz.fsf@gnu.org>
From: Eli Zaretskii <eliz AT gnu DOT org>
To: djgpp AT delorie DOT com
In-reply-to: <f7f2b0tp6atvgj7rgqg83bo9mo2asdsndf@4ax.com> (message from Brian
Inglis on Mon, 24 May 2004 00:11:44 GMT)
Subject: Re: Using DR-DOS fork in DJGPP
References: <uoeok2abs DOT fsf AT gnu DOT org> <4d201f78 DOT 0405191158 DOT 63550b51 AT posting DOT google DOT com> <7704-Wed19May2004233123+0300-eliz AT gnu DOT org> <4d201f78 DOT 0405191847 DOT 6697f90d AT posting DOT google DOT com> <u3c5vbous DOT fsf AT gnu DOT org> <4d201f78 DOT 0405200540 DOT 307bb15a AT posting DOT google DOT com> <9743-Thu20May2004201223+0300-eliz AT gnu DOT org> <4d201f78 DOT 0405210913 DOT 26a5ffcb AT posting DOT google DOT com> <uwu33ad61 DOT fsf AT gnu DOT org> <4d201f78 DOT 0405230527 DOT 3f17fb4b AT posting DOT google DOT com> <2719-Sun23May2004185224+0300-eliz AT gnu DOT org> <f7f2b0tp6atvgj7rgqg83bo9mo2asdsndf AT 4ax DOT com>
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> From: Brian Inglis <Brian DOT Inglis AT SystematicSw DOT Invalid>
> Newsgroups: comp.os.msdos.djgpp
> Date: Mon, 24 May 2004 00:11:44 GMT
> 
> Alternatively, the fork routine, after copying the VM, has to look at
> the child process' file handle table, and reestablish the open file
> handles. 

I don't see how this could be done, at least not easily.  We don't
need just to have the same file open, we need their file handles to
refer to the same entry in the DOS System File Table (SFT), so that if
the child moves the file position (by, e.g., reading or seeking into
the file), the file position of the parent is moved as well to the
same place.  I.e., we need the equivalent of the `dup' system call
(except that we cannot call `dup' because it doesn't work with handles
from another process).

Therefore, if the DR-DOS's fork doesn't handle these problems, there's
no way we could, unless we know enough about DR-DOS internals to
manipulate the SFT entries directly.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019