Mail Archives: djgpp-workers/1997/09/09/13:41:44
Eli Zaretskii wrote:
[locked memory]
> AFAIK, no, you can't, because this will break with DPMI 1.0 servers
> (currently, there is only 386Max that supports 1.0). In DPMI 1.0, the
> descriptors aren't global, they are local to the process.
Can't you set a descriptor in the global area ?
But, hey ! when spawning (if no multitasking is supported) we are always
the SAME process, for the DPMI server, so they should be valid in the
child too.
> A single tb is not good enough, even if there's no multitasking, because
> the child program would overwrite the contents of the buffer, and when
Uh, I thought a tb is something temporary. It's used just to pass data
to/from dos, but data isn't stored there for a 'long' time (eg 2 calls
to read() ) : it's copied to memory over the first MB. Isn't it ?
> controls gets back to the parent, it will see in the tb something
> different from what it put there before spawning the child. This might
> lead to very subtle bugs.
I don't think so. Why should it expect that the child doesen't change
the tb?
Spawning the child is just another DOS call, like read() ...
- Raw text -