Skip to main content

Module meta

Module meta 

Source
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.

Structs§

MetaPageMeta
The metadata of frames that holds metadata of frames.
MetaSlot

Enums§

GetFrameError
The error type for getting the frame from a physical address.

Constants§

FRAME_METADATA_MAX_ALIGN
The maximum alignment in bytes of the metadata of a frame.
META_SLOT_SIZE
REF_COUNT_MAX
REF_COUNT_UNIQUE
REF_COUNT_UNUSED

Traits§

AnyFrameMeta
All frame metadata types must implement this trait.