Bounded file-backed page cache with explicit residency and mapping pins — core interface. More...
import std;import lib.error;import zxfoundation.memory.page_cache.types;import zxfoundation.base.types;Functions | |
| auto | zxfoundation::memory::page_cache::acquire_page (void *node, u32 index, u8 storage_key) noexcept -> std::expected< page_lease, lib::kernel_error > |
| Find or populate a page and acquire one VM mapping lease. | |
| auto | zxfoundation::memory::page_cache::clear_dirty_phys (u64 phys) noexcept -> void |
| Clear software and hardware dirty state after a successful writeback. | |
| auto | zxfoundation::memory::page_cache::duplicate_binding (const cache_binding &source, u8 storage_key) noexcept -> std::expected< cache_binding, lib::kernel_error > |
| Acquire a second mapping pin for the same cache page. | |
| auto | zxfoundation::memory::page_cache::evict_phys (u64 phys) noexcept -> bool |
| Write back and evict a clean, unmapped cache page. | |
| auto | zxfoundation::memory::page_cache::evict_range (u64 phys_start, u64 phys_end) noexcept -> u32 |
| Evict cache pages contained in a physical drain range. | |
| auto | zxfoundation::memory::page_cache::install_reader (read_page_fn reader) noexcept -> std::expected< void, lib::kernel_error > |
| Install the filesystem page reader used to populate cache misses. | |
| auto | zxfoundation::memory::page_cache::install_writer (write_page_fn writer) noexcept -> std::expected< void, lib::kernel_error > |
| Install the filesystem page writer used before dirty eviction. | |
| auto | zxfoundation::memory::page_cache::is_dirty_phys (u64 phys) noexcept -> bool |
| Probe dirty state by physical page through the PFN hash index. | |
| auto | zxfoundation::memory::page_cache::mark_dirty_binding (const cache_binding &binding) noexcept -> std::expected< void, lib::kernel_error > |
| Mark the page held by a live VM slot dirty. | |
| auto | zxfoundation::memory::page_cache::mark_dirty_phys (u64 phys) noexcept -> void |
| Mark a cache page dirty by physical address. | |
| auto | zxfoundation::memory::page_cache::reclaim_unmapped (u32 target_pages) noexcept -> u32 |
Reclaim up to target_pages unmapped cache pages. | |
| auto | zxfoundation::memory::page_cache::release (page_lease &&lease) noexcept -> std::expected< void, lib::kernel_error > |
| Consume a failed-to-install lease and release its mapping pin. | |
| auto | zxfoundation::memory::page_cache::release_binding (cache_binding &binding) noexcept -> std::expected< void, lib::kernel_error > |
| Release the VM mapping pin represented by a durable slot binding. | |
| auto | zxfoundation::memory::page_cache::resident_count () noexcept -> u32 |
| Return the number of cache-resident pages. | |
Bounded file-backed page cache with explicit residency and mapping pins — core interface.
SPDX-License-Identifier: Apache-2.0
|
nodiscardexportnoexcept |
Write back and evict a clean, unmapped cache page.