mirror of
https://github.com/taigrr/gopher-os
synced 2025-01-18 04:43:13 -08:00
The API provides the Map() and MapTemporary() functions that establish virtual -> physical address mappings using the currently active page directory table. Mapped pages can be unmapped using the Unmap() function. When unmapping virtual addresses, the page tables leading to them will not be automatically released even if they are empty. This will be addressed by a future commit.
12 lines
377 B
Go
12 lines
377 B
Go
package vmm
|
|
|
|
// flushTLBEntry flushes a TLB entry for a particular virtual address.
|
|
func flushTLBEntry(virtAddr uintptr)
|
|
|
|
// switchPDT sets the root page table directory to point to the specified
|
|
// physical address and flushes the TLB.
|
|
func switchPDT(pdtPhysAddr uintptr)
|
|
|
|
// activePDT returns the physical address of the currently active page table.
|
|
func activePDT() uintptr
|