@@ -29,15 +29,27 @@ Complete virtual memory map with 4-level page tables
29
29
Start addr | Offset | End addr | Size | VM area description
30
30
========================================================================================================================
31
31
| | | |
32
- 0000000000000000 | 0 | 00007fffffffffff | 128 TB | user-space virtual memory, different per mm
32
+ 0000000000000000 | 0 | 00007fffffffefff | ~128 TB | user-space virtual memory, different per mm
33
+ 00007ffffffff000 | ~128 TB | 00007fffffffffff | 4 kB | ... guard hole
33
34
__________________|____________|__________________|_________|___________________________________________________________
34
35
| | | |
35
- 0000800000000000 | +128 TB | ffff7fffffffffff | ~16M TB | ... huge, almost 64 bits wide hole of non-canonical
36
- | | | | virtual memory addresses up to the -128 TB
36
+ 0000800000000000 | +128 TB | 7fffffffffffffff | ~8 EB | ... huge, almost 63 bits wide hole of non-canonical
37
+ | | | | virtual memory addresses up to the -8 EB
37
38
| | | | starting offset of kernel mappings.
39
+ | | | |
40
+ | | | | LAM relaxes canonicallity check allowing to create aliases
41
+ | | | | for userspace memory here.
38
42
__________________|____________|__________________|_________|___________________________________________________________
39
43
|
40
44
| Kernel-space virtual memory, shared between all processes:
45
+ __________________|____________|__________________|_________|___________________________________________________________
46
+ | | | |
47
+ 8000000000000000 | -8 EB | ffff7fffffffffff | ~8 EB | ... huge, almost 63 bits wide hole of non-canonical
48
+ | | | | virtual memory addresses up to the -128 TB
49
+ | | | | starting offset of kernel mappings.
50
+ | | | |
51
+ | | | | LAM_SUP relaxes canonicallity check allowing to create
52
+ | | | | aliases for kernel memory here.
41
53
____________________________________________________________|___________________________________________________________
42
54
| | | |
43
55
ffff800000000000 | -128 TB | ffff87ffffffffff | 8 TB | ... guard hole, also reserved for hypervisor
@@ -88,15 +100,26 @@ Complete virtual memory map with 5-level page tables
88
100
Start addr | Offset | End addr | Size | VM area description
89
101
========================================================================================================================
90
102
| | | |
91
- 0000000000000000 | 0 | 00ffffffffffffff | 64 PB | user-space virtual memory, different per mm
103
+ 0000000000000000 | 0 | 00fffffffffff000 | ~64 PB | user-space virtual memory, different per mm
104
+ 00fffffffffff000 | ~64 PB | 00ffffffffffffff | 4 kB | ... guard hole
92
105
__________________|____________|__________________|_________|___________________________________________________________
93
106
| | | |
94
- 0100000000000000 | +64 PB | feffffffffffffff | ~16K PB | ... huge, still almost 64 bits wide hole of non-canonical
95
- | | | | virtual memory addresses up to the -64 PB
107
+ 0100000000000000 | +64 PB | 7fffffffffffffff | ~8 EB | ... huge, almost 63 bits wide hole of non-canonical
108
+ | | | | virtual memory addresses up to the -8EB TB
96
109
| | | | starting offset of kernel mappings.
110
+ | | | |
111
+ | | | | LAM relaxes canonicallity check allowing to create aliases
112
+ | | | | for userspace memory here.
97
113
__________________|____________|__________________|_________|___________________________________________________________
98
114
|
99
115
| Kernel-space virtual memory, shared between all processes:
116
+ ____________________________________________________________|___________________________________________________________
117
+ 8000000000000000 | -8 EB | feffffffffffffff | ~8 EB | ... huge, almost 63 bits wide hole of non-canonical
118
+ | | | | virtual memory addresses up to the -64 PB
119
+ | | | | starting offset of kernel mappings.
120
+ | | | |
121
+ | | | | LAM_SUP relaxes canonicallity check allowing to create
122
+ | | | | aliases for kernel memory here.
100
123
____________________________________________________________|___________________________________________________________
101
124
| | | |
102
125
ff00000000000000 | -64 PB | ff0fffffffffffff | 4 PB | ... guard hole, also reserved for hypervisor
0 commit comments