Module paging
Source pub use pagetable::*;
- fault
- pagetable
- basic paging support. code derived from the
x86_64 crate
- get_cr3
- for x86_64, return the CR3 register. this is the physical address of the
page table root.
TODO: use page root in task struct instead of raw cr3
- get_root
- returns the identically mapped (+ kernel offset) virtual address of the page
table
- map_page
- walk the page table, create missing tables, return mapped physical frame
- map_range
- map_vma⚠
- unsafe as it dereferences raw pointer pt_root. Must make sure it’s a valid,
4k aligned virtual address.