Subject: Re: Alternative to memory maps for large (> 10GB) files on ix86.
To: None <mac@Wireless.Com>
From: John Kohl <jtk@kolvir.arlington.ma.us>
List: port-i386
Date: 10/16/2000 07:48:13
>>>>> "Mike" == Mike Cheponis <mac@Wireless.Com> writes:

Mike> I wondered about this once, and was, ahhh, "discouraged" from this line of
Mike> thinking, but perhaps you want to write some code.

Mike> On the 486 (and I assume Pentii) each task on the 486 has a maximum of
Mike> 2^14-1 (16K) selectors, and offsets can be 2^32 bytes, giving a total of
Mike> 2^46 bytes (or 64 terabytes) of logical address space per task.  (A selector
Mike> is the contents of a segment register).  That's 70,364,449,210,368 bytes
Mike> per task.

Alas, this doesn't work, because the x86 interprets segments to get a
"linear address" which is then bashed against page tables to get to the
real memory.  This is the "wrong order" for expanding addressable
memory.

-- 
==John Kohl <jtk@kolvir.arlington.ma.us>, <john_kohl@alum.mit.edu>
Home page: <http://people.ne.mediaone.net/jtk/>
Bicycling and Skiing to keep fit.