Skip to main content

Module boot

Module boot 

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

BootVectorTable
Owned early exception descriptors for the current code mapping and selector. Keep the value at a stable address while any CPU has it installed.
DescriptorAddress
A canonical 64-bit virtual memory address.
GdtEntry
8-byte entry in a descriptor table.
GlobalDescriptorTable
A 64-bit mode global descriptor table (GDT).
SegmentSelector
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).
TaskStateSegment
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.
TrapStorage
Runtime-owned memory retained by this CPU’s descriptor registers.
VirtAddrNotValid
A passed u64 was not a valid virtual address.

Enums§

Descriptor
A 64-bit mode segment descriptor.
InvalidIoMap
The given IO permissions bitmap is invalid.
PrivilegeLevel
Represents a protection ring level.

Constants§

KERNEL_CR0_STATE
Control-register state installed before a CPU enters the kernel runtime.

Traits§

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