Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 02 Aug 2001 22:08:56 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        freebsd-hackers@FreeBSD.org, craig <craiglei@pasia.com.cn>
Subject:   Re: How to visit physical memory above 4G?
Message-ID:  <3B6A31E8.836122DA@mindspring.com>
References:  <XFMail.010802093340.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote:
> Err. hang on.  This has zero to do with segmentation.  Zip, nada.
> PAE is completely in the paging side of things.  No matter what
> fun games you play with segmentation, you still end up with a
> 32-bit linear address that gets handed off to the paging translations.
> PAE just allows you to use more backing store across multiple
> processes, but you are still stuck with a 4gb virtual address
> space for processes.  (Including KVM)

IMO, the 4 bit selector "register" is the moral equivalent
of a segment register.

Personally, I think it's much less useful to run the kernel
out of KVA space, than it is to have more memory available
to the kernel for things like mbufs, so I'm not really very
interested in trying to raise the per process address space
limits this way.  You could actually get 4G for the kernel
and 4G for processes using this, but you would only need two
"segments" to make this happen; mapping the other stuff at
the same time makes little sense: you just map a window on
it to implement region overlays for user or kernel data
paging.

Given the compiler tools we have, this still limits you to
using only 4G in a given VA space, unless you did something
evil, like add "HLOCK/HUNLOCK", etc..


> > But to directly answer your question: by rewriting much of the
> > low core virtual memory and page mapping handling code to know
> > about segmentation.
> 
> No, to rewrite said code to handle a different type of page table
> structure.

Virtual table structure/segements: same difference: I'm now
wdoing in software what I bought hardware to get away from
having to do in software.

Given the vastly simplified page management in Linux, I
could see how there wouldn't really be a big performance
loss over the way Linux does things without this, so it
might be OK, so long as there were no shared memory regions,
semaphores, etc..  That really makes it pretty useless.

-- Terry

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3B6A31E8.836122DA>