X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f From: "japheth" Newsgroups: comp.os.msdos.djgpp Subject: Re: LWP & hw_exception under DJGPP Date: 6 Dec 2006 06:05:34 -0800 Organization: http://groups.google.com Lines: 16 Message-ID: <1165413934.425031.9950@73g2000cwn.googlegroups.com> References: NNTP-Posting-Host: 84.160.147.73 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Trace: posting.google.com 1165413940 19037 127.0.0.1 (6 Dec 2006 14:05:40 GMT) X-Complaints-To: groups-abuse AT google DOT com NNTP-Posting-Date: Wed, 6 Dec 2006 14:05:40 +0000 (UTC) In-Reply-To: User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse AT google DOT com Injection-Info: 73g2000cwn.googlegroups.com; posting-host=84.160.147.73; posting-account=mzfWKQ0AAABGi1ntJ-ACvGOd9gTHhyb0 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp 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 Precedence: bulk > 2. My program crashes, with SIGSEGV, when it tries to 'pop' > something from the stack, while SS points to segment with limit=0000FFF > and ESP=1000. What is that segment? I was sure, that DJGPP uses the flat > memory model - all data and code are sharing the same linear space, but > during the crash SS points to segment with different base address (which > differs from the base address pointed by CS, for example). Could you > explain what is the purpose of this weird segment? it is the "locked" protected-mode stack. The dpmi host switches to this stack to handle hardware interrupts, real-mode callbacks and exceptions. The selector contained in SS might even be a GDT selector, that is, you won't get it's linear base address by calling int 31h, ax=0006.