G
Guest
Guest
Archived from groups: comp.arch,comp.sys.ibm.pc.hardware.chips,comp.sys.intel (More info?)
"Yousuf Khan" <bbbl67@ezrs.com> wrote in message
news:e4Kwc.39667$bVw1.9931@news01.bloor.is.net.cable.rogers.com...
> Patrick Schaaf <mailer-daemon@bof.de> wrote:
> > The only way I know of which could in theory give a single process
> > more than 32 bits of accessible address space, is the constant making
> > present / nonpresent of segments, with the kernel fault handler for
> > nonpresent segments fiddling with the page directory. However, as you
> > can imagine, that means a user/kernel/user switch whenever a
> > nonpresent segment is used, accompanied by TLB invalidation stuff on
> > page directory reloading.
>
> Which is the method I was actually thinking of. However, as you said it is
a
> slow process. It would be a less slow process if the data and code
segments
> occupied different locations in linear memory, therefore they could share
> the same page table directories without requiring special OS-based
software
> page table switching techniques.
That would have been possible if linear addresses had been expanded to
36-bit along with physical addresses, but they weren't 🙁
S
--
Stephen Sprunk "Stupid people surround themselves with smart
CCIE #3723 people. Smart people surround themselves with
K5SSS smart people who disagree with them." --Aaron Sorkin
"Yousuf Khan" <bbbl67@ezrs.com> wrote in message
news:e4Kwc.39667$bVw1.9931@news01.bloor.is.net.cable.rogers.com...
> Patrick Schaaf <mailer-daemon@bof.de> wrote:
> > The only way I know of which could in theory give a single process
> > more than 32 bits of accessible address space, is the constant making
> > present / nonpresent of segments, with the kernel fault handler for
> > nonpresent segments fiddling with the page directory. However, as you
> > can imagine, that means a user/kernel/user switch whenever a
> > nonpresent segment is used, accompanied by TLB invalidation stuff on
> > page directory reloading.
>
> Which is the method I was actually thinking of. However, as you said it is
a
> slow process. It would be a less slow process if the data and code
segments
> occupied different locations in linear memory, therefore they could share
> the same page table directories without requiring special OS-based
software
> page table switching techniques.
That would have been possible if linear addresses had been expanded to
36-bit along with physical addresses, but they weren't 🙁
S
--
Stephen Sprunk "Stupid people surround themselves with smart
CCIE #3723 people. Smart people surround themselves with
K5SSS smart people who disagree with them." --Aaron Sorkin