lkml.org 
[lkml]   [1997]   [Aug]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: Memory Management - BSD vs Linux
Date
Douglas Jardine writes:
> I missed a couple of questions in my last mail:
>
> [7] In order to be able to run over different architectures, Linux
> implements a 3-level page table. It then rolls the architecture
> specific stuff into this 3-level organization. For example x86
> has only 2-level page tables but these are appropriately munged
> into the 3-level organization. My question is that, are there
> any architectures out there for which this sort of transformation
> won't work? i.e does the transformation take away enough from
> the architectures strengths that other hacks are needed to be
> able to get reasonable performance?

I wondered about that too. An interesting example would be the
inverted page tables of the RS6000 (and isn't PA-RISC either the
same or weird in a similar way: I know there's DVMA fun for PA-RISC).
Since nobody has tried porting Linux to RS6k (that I know about) and
the current PA-RISC support is on top of a microkernel (or is there
something native now?), there's never been a case where the Linux
pgd/pmd/pte hasn't been general enough (whereas SVR4 HAT and
*BSD/Mach would be). Looked at another way: all the main architectures
*are* covered by the Linux solution (PA-RISC is a "maybe" I suppose)
so, since the Linux one gives enough generality to cover them and also
gives performance benefits (less indirection and more opportunity for
the compiler to optimise), it was a good design decision.

(But I'd still like to know if anyone has a mapping worked out for
RS6k :-).

--Malcolm

--
Malcolm Beattie <mbeattie@sable.ox.ac.uk>
Unix Systems Programmer
Oxford University Computing Services

\
 
 \ /
  Last update: 2005-03-22 13:40    [W:0.201 / U:0.096 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site