Update on chapter 3 notes.
This commit is contained in:
parent
43805de801
commit
f8f86c4cb9
1 changed files with 7 additions and 0 deletions
|
@ -76,3 +76,10 @@ Before setting satp, instructions use phy@.
|
||||||
Each CPU its own satp so each CPU can handle user code.
|
Each CPU its own satp so each CPU can handle user code.
|
||||||
|
|
||||||
XV6 = 1 page table per process and 1 page table for the kernel
|
XV6 = 1 page table per process and 1 page table for the kernel
|
||||||
|
XV6 kernel page table:
|
||||||
|
- direct mapping for most pages
|
||||||
|
- no direct mapping for the trampoline page
|
||||||
|
- no direct mapping for stacks' pages
|
||||||
|
=> these pages are related to the processes (`kstack` in the `proc` structure)
|
||||||
|
=> the kstack is followed by an invalid guard page (PTE_V not set)
|
||||||
|
to prevent memory corruption from stack overflows
|
||||||
|
|
Loading…
Add table
Reference in a new issue