-
Notifications
You must be signed in to change notification settings - Fork 0
/
MemoryLayout.txt
45 lines (45 loc) · 1.46 KB
/
MemoryLayout.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/* ****** Virt. Addr. *****
* +----- 0x00000000 -----+ vvv User-Space
* | unmapped
* +----- 0x00001000 -----+
* | vvv User-Heap owner: MemoryManager/Allocator
* | (Ring 3-Classes/-Objects, ...)
* +
* |
* +
* | ^^^ User-Stack owner: Thread
* +----------------------+ ^^^ User-Space
* +----- 0xF0000000 -----+ (0x3C0:0x000)
* +----------------------+ vvv Kernel-Space (local)
* | vvv Kernel-Local-Heap owner: (Kernel-)MemoryManager/Allocator?
* +
* |
* +
* | ^^^ Kernel-Local-Stacks owner: (Kernel-)Thread?
* +----- 0xF8000000 -----+ (0x3E0:0x000)
* +----------------------+ vvv Kernel-Space (shared)
* | vvv Kernel-Shared-Heap owner: (Kernel-)MemoryManager/Allocator?
* | (Ring 0-Classes/-Objects, ...)
* +
* |
* +
* | ^^^ Kernel-Shared-Stack owner: (Kernel-)Thread?
* +----- 0xFF800000 -----+ (0x3FE:0x000)
* | reserved (Remapped-Modules, shared, HW, ...)
* | ...
* +----- 0xFFBE8000 -----+ (0x3FE:0x3E8) owner: CgaScreen
* | EGA-Memory (0xB8000-0xBFFFF)
* +----- 0xFFBF0000 -----+ (0x3FE:0x3F0) owner: MMU
* | page management
* +----- 0xFFBFD000 -----+ (0x3FE:0x3FD) owner: InterruptVectorTable
* | IDT/GDT/TSS
* | ISR entries
* | reserved
* +----------------------+ ^^^ Kernel-Space (shared)
* +----- 0xFFC00000 -----+ (0x3FF:0x000) owner: MMU
* | Page Tables
* | ...
* +----- 0xFFFFF000 -----+ (0x3FF:0x3FF) owner: MMU
* | Page Directory
* +----------------------+ ^^^ Kernel-Space (local)
*/