Date: Sun, 8 Aug 1999 14:12:23 +0300 (IDT) From: Eli Zaretskii X-Sender: eliz AT is To: Martin Str|mberg cc: djgpp AT delorie DOT com Subject: Re: Fixed stack size? In-Reply-To: <7ockks$hgf$1@news.luth.se> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk 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.