www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/01/31/03:51:30

Date: Sun, 31 Jan 1999 10:48:33 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
X-Sender: eliz AT is
To: Mohamed Saad <bazramit AT yahoo DOT com>
cc: djgpp AT delorie DOT com
Subject: Re: Paradox... again!!
In-Reply-To: <19990131071429.1462.rocketmail@send103.yahoomail.com>
Message-ID: <Pine.SUN.3.91.990131104253.25086U-100000@is>
MIME-Version: 1.0
Reply-To: djgpp AT delorie DOT com

On Sat, 30 Jan 1999, Mohamed Saad wrote:

> would u please tell me what is this initial segment. (i.e.
> what is its base address, and what is its limit?)

The base address depends on the DPMI server and several other factors, 
it's not constant.

The limit depends on the initial size of the code and data, and grows as 
needed if the program calls malloc.  So this, too, doesn't have a 
universal answer.

You can abort any program, e.g. by pressing Ctrl-BREAK, and then the 
crash traceback lists all the selectors with their base address and 
limit.

> and btw, what is its privilige level?

IOPL is 3, under most DPMI servers.

> Can i
> deduce that _djgpp_conventional_base equals the negative of the base
> of this segment? if not, what is its value? thanx in advance!

Please read section 18.6 of the FAQ, it explains this matter.

>    can i change the initial segment of the program? (e.g. start my
> program with all segments selecting a segment that begins at 0 and
> spans 128 Mb).

This is almost impossible in the DPMI environment.  You need to have an 
intimate knowledge of the DPMI server, and even then it's not always 
possible.

- Raw text -


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