Mail Archives: djgpp/1999/08/08/11:51:56
On 5 Aug 1999, Martin Str|mberg wrote:
> No I don't think I do. Physically it would be mapped in but as the
> DPMI server hasn't given it to a client to use it's logically
> unmapped. So the server has to decide when page fault happens, if it's
> logically unmapped, to deliver a SIGSEGV; or if it _is_ mapped, swap
> in the page and let the client continue.
>
> In one sentence, the DPMI server will use page faults to generate
> SIGSEGVs.
I'm probably missing something. Are you telling that accessing some
addresses within the DS limits could, under some circumstances,
deliver a SIGSEGV to the application? If so, can you write a program
that demonstrates this?
The only way known to me of having parts of the address space unmapped
is to explicitly decommit those parts. That's what the DJGPP startup
code does with the null page. But that requires an explicit DPMI call
by the application, and isn't supported by any DPMI server except
CWSDPMI and 386Max.
- Raw text -