lkml.org 
[lkml]   [1997]   [Aug]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Memory Management - BSD vs Linux


    On Tue, 12 Aug 1997, Cort wrote:
    >
    > How can they only map 'parts' of the virtual address space? Of course
    > there are problems once you overflow 2 buckets in the hash table but there
    > are a number of methods for dealing with full hash tables (perhaps not
    > suitable for use in the kernel - but possible).

    The point is that the rs6000/ppc hardware cannot support a full virtual
    memory map with the hash tables. As such they are not page tables: they
    are only _partial_ page tables.

    A page table allows for looking up a virtual address.

    - The IBM hash tables do not. If I create a virtual mapping that happens
    to have more than eight (or is it sixteen?) aliases for the hash, the
    hash table can no longer hold them all. Ergo the kernel cannot consider
    the hash tables to be a page table.

    A TLB allows for fast lookups of the parts of the VM space that the CPU is
    aware of at the moment.

    - Which is exactly what the IBM hash tables do.

    "Hash table" just happens to be the IBM implementation for the TLB. Others
    have done similar things to expand the TLB outside the chip (some sparc
    chips - the more braindamaged ones, to be exact). Making it external to
    the CPU doesn't make it a page table, it only makes it slower (but in all
    fairness it also makes it bigger, which is obviously why they do it).

    Linus


    \
     
     \ /
      Last update: 2005-03-22 13:40    [W:0.023 / U:31.276 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site