Expand description
Metadata management of frames.
You can picture a globally shared, static, gigantic array of metadata
initialized for each frame.
Each entry in this array holds the metadata for a single frame.
There would be a dedicated small
“heap” space in each slot for dynamic metadata. You can store anything as
the metadata of a frame as long as it’s Sync.
§Implementation
The slots are placed in the metadata pages mapped to a certain virtual address in the kernel space. So finding the metadata of a frame often comes with no costs since the translation is a simple arithmetic operation.
Modules§
Structs§
- Meta
Page Meta - The metadata of frames that holds metadata of frames.
- Meta
Slot - Stored
Page Table Page Meta
Enums§
- GetFrame
Error - The error type for getting the frame from a physical address.
- Meta
Slot Storage
Constants§
- FRAME_
METADATA_ MAX_ ALIGN - The maximum alignment in bytes of the metadata of a frame.
- FRAME_
METADATA_ MAX_ SIZE - The maximum number of bytes of the metadata of a frame.
- REF_
COUNT_ MAX - REF_
COUNT_ UNIQUE - REF_
COUNT_ UNUSED
Traits§
- AnyFrame
Meta - Space-holder of the AnyFrameMeta virtual table.