#[repr(C)]pub enum MemoryType {
Conventional = 0,
AcpiReclaimable = 1,
FdtReclaimable = 2,
LoadedImage = 3,
KernelPageTables = 4,
KernelHeap = 5,
Loader = 6,
BootInfo = 7,
}
Variants§
Conventional = 0
Memory that can be used freely by the kernel.
AcpiReclaimable = 1
Memory that contains ACPI tables. After the OS has finished with them, this may be treated as conventional memory.
FdtReclaimable = 2
Memory that contains the Flattened Device Tree (FDT). After the OS has finished with the device tree, this memory can be treated as conventional.
LoadedImage = 3
Memory occupied by images that the loader has been asked to load from disk. If the kernel can determine that an image is no longer needed, it may use this memory.
KernelPageTables = 4
Memory that is occupied by page tables created by the loader for the kernel. If the kernel can determine that it no longer needs part of this mapped, it may use this memory.
KernelHeap = 5
Memory that has been mapped for the kernel heap.
Loader = 6
Memory that the loader maps into the kernel address space. It may be reclaimed by the kernel immediately,
and the kernel should also unmap it from its address space. Seed will only produce these entries if the
implementation needs to keep itself mapped - otherwise this memory may be marked Conventional
.
BootInfo = 7
Memory that is occupied by the boot info constructed by the loader for the kernel. Contains the BootInfo
structure, and all the structures that are referenced by it. After the kernel has finished with this data,
it may use this memory.
Trait Implementations§
Source§impl Clone for MemoryType
impl Clone for MemoryType
Source§fn clone(&self) -> MemoryType
fn clone(&self) -> MemoryType
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more