Changes between Version 9 and Version 10 of VASFeatures
- Timestamp:
- 2011-10-22T13:08:49Z (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
VASFeatures
v9 v10 9 9 48-bit virtual address width 10 10 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 || 15 15 16 16 1. depends on implementation, but in practice current implementations use 48 bits … … 22 22 == arm32 == 23 23 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 || 27 27 28 28 1. physical addresses beyond the limit of physical memory are mapped non-identity … … 34 34 == ia32 == 35 35 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 || 39 39 40 40 1. physical addresses beyond the limit of physical memory are mapped non-identity … … 50 50 == mips32 == 51 51 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 || 58 58 59 59 1. maps to physical 0, uncached, bypasses TLB … … 65 65 == ppc32 == 66 66 67 || '''Starting address''' || '''Size''' || '''HW limitation''' || '''HelenOS use'''||68 || `80000000` || 2 GiB || none || kernel identity^(1)^||69 || `00000000` || 2 GiB || none || uspace non-identity||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 70 71 71 1. physical addresses beyond the limit of physical memory are mapped non-identity … … 79 79 44-bit virtual address width 80 80 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)^||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)^ || 85 85 86 86 … … 89 89 64-bit virtual address width 90 90 91 || '''Starting address''' || '''Size''' || '''HW limitation''' || '''HelenOS use'''||92 || `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)^ || 93 93 94 94 … … 97 97 48-bit virtual address width 98 98 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)^||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)^ || 103 103 104 104 1. both kernel and uspace run in separated 64-bit address spaces