perf(kernel): linked cap tree, translate-based page lookup, next-fit frames/heap, targeted dequeue; host benches

This commit is contained in:
2026-10-27 01:33:26 +01:00
parent 19aeabd86d
commit 2a8a5b0c27
24 changed files with 923 additions and 200 deletions

View File

@@ -50,6 +50,10 @@ pub trait Platform {
) -> Result<(), MapError>;
/// Removes the mapping at `va` and flushes it from the TLB.
fn unmap_page(&mut self, process: ProcessId, va: VirtualAddress);
/// The frame `va` is mapped to in `process`, if any. Only a lookup:
/// the kernel confirms every answer against its own frame table, so a
/// wrong answer can make the kernel refuse but never trust a frame.
fn translate(&self, process: ProcessId, va: VirtualAddress) -> Option<PhysicalAddress>;
/// Fills a frame with zeros before it is handed to a process.
fn zero_frame(&mut self, pa: PhysicalAddress);