From 3a08bbd01ac3360475a0278b5065ae0866b2eb97 Mon Sep 17 00:00:00 2001 From: Matheus Afonso Martins Moreira Date: Tue, 17 Sep 2024 20:46:30 -0300 Subject: [PATCH] docs: tabulate Linux user space memory maps Will be useful for laying out the memory manager's memory maps. Let's start with the x86_64 and AArch64 architectures. --- documentation/linux/memory-map.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 documentation/linux/memory-map.md diff --git a/documentation/linux/memory-map.md b/documentation/linux/memory-map.md new file mode 100644 index 0000000..e61a486 --- /dev/null +++ b/documentation/linux/memory-map.md @@ -0,0 +1,18 @@ +# Linux user space memory maps + +| Architecture | Start | End | Address space bits | Page size | Translation tables | +| :----------: | -----------------: | :----------------- | :----------------: | :-------: | :----------------: | +| `x86_64` | `0000000000000000` | `00007fffffffffff` | 47 | 4 KB | 4 | +| `x86_64` | `0000000000000000` | `00ffffffffffffff` | 56 | 4 KB | 5 | +| `arm64` | `0000000000000000` | `0000007fffffffff` | 39 | 4 KB | 3 | +| `arm64` | `0000000000000000` | `0000ffffffffffff` | 48 | 4 KB | 4 | +| `arm64` | `0000000000000000` | `000003ffffffffff` | 42 | 64 KB | 2 | +| `arm64` | `0000000000000000` | `000fffffffffffff` | 52 | 64 KB | 3 | + +# References + + - [`x86_64`][x86_64] + - [`arm64`][arm64] + +[x86_64]: https://www.kernel.org/doc/html/latest/arch/x86/x86_64/mm.html +[arm64]: https://www.kernel.org/doc/html/latest/arch/arm64/memory.html