Expand description
CPU initialization for the selected target.
Re-exports§
pub use super::gdt::TrapStorageProvider;
Modules§
- trap_
storage_ provider - Statically bound calls and implementation binding for
TrapStorageProvider.
Structs§
- Boot
Vector Table - Owned early exception descriptors for the current code mapping and selector. Keep the value at a stable address while any CPU has it installed.
- Descriptor
Address - A canonical 64-bit virtual memory address.
- GdtEntry
- 8-byte entry in a descriptor table.
- Global
Descriptor Table - A 64-bit mode global descriptor table (GDT).
- Segment
Selector - Specifies which element to load into a segment from descriptor tables (i.e., is a index to LDT or GDT table with some additional flags).
- Task
State Segment - In 64-bit mode the TSS holds information that is not directly related to the task-switch mechanism, but is used for stack switching when an interrupt or exception occurs.
- Trap
Storage - Runtime-owned memory retained by this CPU’s descriptor registers.
- Virt
Addr NotValid - A passed
u64was not a valid virtual address.
Enums§
- Descriptor
- A 64-bit mode segment descriptor.
- Invalid
IoMap - The given IO permissions bitmap is invalid.
- Privilege
Level - Represents a protection ring level.
Constants§
- KERNEL_
CR0_ STATE - Control-register state installed before a CPU enters the kernel runtime.
Traits§
- Trap
Storage Provider - Supplies descriptor storage once for each initialized CPU.
Functions§
- assert_
kernel_ ⚠cr0_ state - Checks the complete early kernel CR0 contract on this CPU.
- configure_
paging ⚠ - Installs the kernel CR0 state and enables global page translations.
- current_
vector_ table - Returns the currently installed IDT base.
- enable_
execute_ ⚠disable - Enables architectural execute-disable page permissions.
- enable_
xsave_ ⚠features - Enables supported x87, SSE and AVX components in the boot XCR0 policy.
- init_
trap - Initializes trap handling on the current CPU.
- install_
boot_ ⚠vectors - Installs the immutable early IDT on the current CPU.
- jump_to⚠
- Transfers to a Rust/C entry on a new stack with a terminating return slot.