Changes between Version 8 and Version 9 of VASFeatures


Ignore:
Timestamp:
2011-10-22T11:29:43Z (13 years ago)
Author:
Jakub Jermář
Comment:

Add situation on ppc32.

Legend:

Unmodified
Added
Removed
Modified
  • VASFeatures

    v8 v9  
    9948-bit virtual address width
    1010
    11 || '''Starting address''' || '''Size'''   || '''HW limitation''' || '''HelenOS use'''   ||
    12 || `FFFF800000000000`     || 128 TiB      || none                || kernel identity (2) ||
    13 || `0000800000000000`     || 16776960 TiB || VA hole (1)         ||                     ||
    14 || `0000000000000000`     || 128 TiB      || none                || uspace non-identity ||
     11|| '''Starting address''' || '''Size'''   || '''HW limitation''' || '''HelenOS use'''    ||
     12|| `FFFF800000000000`     || 128 TiB      || none                || kernel identity^(2)^ ||
     13|| `0000800000000000`     || 16776960 TiB || VA hole^(1)^        ||                      ||
     14|| `0000000000000000`     || 128 TiB      || none                || uspace non-identity  ||
    1515
    16161. depends on implementation, but in practice current implementations use 48 bits
     
    2222== arm32 ==
    2323
    24 || '''Starting address''' || '''Size'''  || '''HW limitation''' || '''HelenOS use'''   ||
    25 || `80000000`             || 2 GiB       || none                || kernel identity (1) ||
    26 || `00000000`             || 2 GiB       || none                || uspace non-identity ||
     24|| '''Starting address''' || '''Size'''  || '''HW limitation''' || '''HelenOS use'''    ||
     25|| `80000000`             || 2 GiB       || none                || kernel identity^(1)^ ||
     26|| `00000000`             || 2 GiB       || none                || uspace non-identity  ||
    2727
    28281. physical addresses beyond the limit of physical memory are mapped non-identity
     
    3434== ia32 ==
    3535
    36 || '''Starting address''' || '''Size'''  || '''HW limitation''' || '''HelenOS use'''   ||
    37 || `80000000`             || 2 GiB       || none                || kernel identity (1) ||
    38 || `00000000`             || 2 GiB       || none                || uspace non-identity ||
     36|| '''Starting address''' || '''Size'''  || '''HW limitation''' || '''HelenOS use'''    ||
     37|| `80000000`             || 2 GiB       || none                || kernel identity^(1)^ ||
     38|| `00000000`             || 2 GiB       || none                || uspace non-identity  ||
    3939
    40401. physical addresses beyond the limit of physical memory are mapped non-identity
     
    5050== mips32 ==
    5151
    52 || '''Starting address''' || '''Size'''  || '''HW limitation'''        || '''HelenOS use'''   ||
    53 || `E0000000`             || 512 MiB     || kseg3, kernel              || unused              ||
    54 || `C0000000`             || 512 MiB     || ksseg, kernel              || unused              ||
    55 || `A0000000`             || 512 MiB     || kseg1, kernel uncached (1) || `hw_map()`          ||
    56 || `80000000`             || 512 MiB     || kseg0, kernel identity (2) || kernel identity     ||
    57 || `00000000`             || 2 GiB       || kuseg, uspace              || uspace non-identity ||
     52|| '''Starting address''' || '''Size'''  || '''HW limitation'''         || '''HelenOS use'''   ||
     53|| `E0000000`             || 512 MiB     || kseg3, kernel               || unused              ||
     54|| `C0000000`             || 512 MiB     || ksseg, kernel               || unused              ||
     55|| `A0000000`             || 512 MiB     || kseg1, kernel uncached^(1)^ || `hw_map()`          ||
     56|| `80000000`             || 512 MiB     || kseg0, kernel identity^(2)^ || kernel identity     ||
     57|| `00000000`             || 2 GiB       || kuseg, uspace               || uspace non-identity ||
    5858
    59591. maps to physical 0, uncached, bypasses TLB
     
    6565== ppc32 ==
    6666
    67 TBD
     67|| '''Starting address''' || '''Size'''  || '''HW limitation''' || '''HelenOS use'''    ||
     68|| `80000000`             || 2 GiB       || none                || kernel identity^(1)^ ||
     69|| `00000000`             || 2 GiB       || none                || uspace non-identity  ||
     70
     711. physical addresses beyond the limit of physical memory are mapped non-identity
    6872
    6973----
     
    757944-bit virtual address width
    7680
    77 || '''Starting address''' || '''Size'''    || '''HW limitation''' || '''HelenOS use'''   ||
    78 || `FFFFF80000000000`     || 8 TiB         || kernel (1)          || kernel identity (3) ||
    79 || `0000080000000000`     || 16777200 TiB  || VA hole (2)         ||                     ||
    80 || `0000000000000000`     || 8 TiB         || kernel (1)          || kernel identity (3) ||
     81|| '''Starting address''' || '''Size'''    || '''HW limitation''' || '''HelenOS use'''    ||
     82|| `FFFFF80000000000`     || 8 TiB         || kernel^(1)^         || kernel identity^(3)^ ||
     83|| `0000080000000000`     || 16777200 TiB  || VA hole^(2)^        ||                      ||
     84|| `0000000000000000`     || 8 TiB         || kernel^(1)^         || kernel identity^(3)^ ||
    8185
    8286
     
    858964-bit virtual address width
    8690
    87 || '''Starting address''' || '''Size'''    || '''HW limitation''' || '''HelenOS use'''   ||
    88 || `0000000000000000`     || 16 EiB        || kernel (1)          || kernel identity (3) ||
     91|| '''Starting address''' || '''Size'''    || '''HW limitation''' || '''HelenOS use'''    ||
     92|| `0000000000000000`     || 16 EiB        || kernel^(1)^         || kernel identity^(3)^ ||
    8993
    9094
     
    939748-bit virtual address width
    9498
    95 || '''Starting address''' || '''Size'''    || '''HW limitation''' || '''HelenOS use'''   ||
    96 || `FFFF800000000000`     || 128 TiB       || kernel (1)          || kernel identity (3) ||
    97 || `0000800000000000`     || 16776960 TiB  || VA hole (4), (5)    ||                     ||
    98 || `0000000000000000`     || 128 TiB       || kernel (1)          || kernel identity (3) ||
     99|| '''Starting address''' || '''Size'''    || '''HW limitation''' || '''HelenOS use'''    ||
     100|| `FFFF800000000000`     || 128 TiB       || kernel^(1)^         || kernel identity^(3)^ ||
     101|| `0000800000000000`     || 16776960 TiB  || VA hole^(4), (5)^   ||                      ||
     102|| `0000000000000000`     || 128 TiB       || kernel^(1)^         || kernel identity^(3)^ ||
    99103
    1001041. both kernel and uspace run in separated 64-bit address spaces