[openbeos] Re: memory beyond 1 gig

  • From: "Manuel Jesus Petit de Gabriel" <freston@xxxxxxxxxxx>
  • To: <openbeos@xxxxxxxxxxxxx>
  • Date: Sat, 8 Sep 2001 12:46:11 -0700


> I was about to reply to my own message and make a correction. I meant
> that you couldn't address more than 4GB RAM with a *single* 32-bit
> register. You could always use a pair of registers to access much more.
> That would be a segmented memory architecture ala Windows 3.x. I would

That's wrong. All segment registers map to a single linear 32 bits address
space
and the page tables translate that linear address to a physical address...
so even
using segment descriptors you are stuck with 4 gigs of address space [1].


> But I was *completely* unaware of the 36-bit trick. If we can
> transparently make use of this --- i.e Pentium Pro users could take
> advantage of larger RAM machines, but that users with older machines

You cannot, only high-end expensive hardware supports all that memory.


manuel,

[1] Of course you can always do some tricks... but they are more of an
"academic" curiosity
    than a useful system. For instance you can mark some descriptors as non
present
    and when the programs traps because of loading such descriptor, reload
cr3 in
    the kernel to a new page directory with a slightly different linear to
physical mapping.
    But it's both tricky and slow.






Other related posts: