delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/04/21/07:50:53

From: "Charles Sandmann" <sandmann AT clio DOT rice DOT edu>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Xeon chips
Date: Tue, 20 Apr 1999 21:45:10
Organization: Aspen Technology, Inc.
Lines: 50
Message-ID: <371cf566.sandmann@clio.rice.edu>
References: <2ADA45B8C19AD111BBEA00805FBE1341DD5029 AT exccolorado DOT co DOT lsil DOT com> <xpbbxvozarg DOT faid280 DOT pminews AT news3 DOT ibm DOT net>
NNTP-Posting-Host: dmcap2.aco.aspentech.com
X-NewsEditor: ED-1.5.8
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

> >Has anybody ever written any code to use the memory that is beyond 4GB on
> >the P6/PII/PIII chips?  I am sure that this would have to be assembly code
> >mixed with C code, but all I need to do is move data in and out of the +4GB
> >region.
> >Brett Henning
 
> The first point is that: yes, the P6s do have 64GB addressing (36 address
> lines).  
 
> Essentially, from what I can tell the way it is implemented is that you need
> to change the 4K page mode that is the basis of the 386 addressing scheme
> into a 2 Meg page mode via setting bit 5 on CR4 to 1.  Really kind of nifty.
 
> The unfortunate point is that, that you cannot have programs running with
> both 4K mode and 2Meg mode operating at the same time, so it really needs to
> be enabled by an Operating System aware of how the new paging mechanism
> works.
 
> Number of OSes enabling new paging mechanism that I know of: 0 :(
 
> Basically, so unless you are programming OSes, and in this case you probably
> wouldn't be using DJ's *DOS* port of GCC/egcs, your probably SOL.  It might
> be possible to recode the DPMI server to know about the 2 Meg page mode, but
> it seems like a lot of work for a feature isn't in a whole lot of demand at
> the moment.
 
>  -- Kelley Cook

Well, since you brought it up ... :-)

CWSDPMI is currently limited to 255Mb physical memory due to being written with
a 16-bit compiler, and the 640K limit it has to live with...

I've considered hacking a fix in to suppport more than 256Mb of memory by
request - but then the page tables themselves (1 per 4Mb, so 1Kb/Mb) start to
limit you to about 512Mb or so before you start page faulting the tables 
themselves (not a very useful design).

Then I decided anyone with that much memory probably doesn't want to page
anyway, and would not worry about wasting a few Mb here and there.  So I 
considered a physical memory only version - no virtual - using large page
support (4Mb pages or 2Mb pages).

Since I haven't used anything except Windows NT, Unixy flavors, and OpenVMS
for several years (no DOS) this is a purely entertainment exercise.

If anyone has exotic hardware to play with and is interested, drop me a note.
I already have some systems with 1Gb in them.

If anyone has a strong opinion or need, I may listen ...

- Raw text -


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