Skip to main content

Module boot

Module boot 

Source
Expand description

Boot subsystem

Regroups all code involved in the early kernel startup:

  • assembly stubs (16-bit => 64-bit transition)
  • bootloader handoff structures (KernelArgs)
  • Boot-protocol entry point
  • Device Tree (FDT) parsing
  • Block device abstraction
  • FAT32 module loader
  • early serial logger
  • kernel panic handler
  • simple TOML parser for kernel configuration

Modulesยง

assembly
block_device
Block device abstraction Block device abstraction for boot partition access.
config
Centralized kernel.toml configuration application Kernel boot configuration application.
dtb_boot
Boot-protocol entry point (DTB/PVH) Boot protocol entry point.
entry
KernelArgs structures shared between bootloader and kernel
fat32_loader
FAT32 module loader FAT32 module loader for reading userspace ELFs from boot partition.
fdt
Device Tree (FDT) parsing Device Tree (FDT) parsing for the custom boot protocol.
limine_shim
Boot-module lookup used by shell commands. With U-Boot the Limine backend is gone; modules load from the FAT32 boot partition (Phase 4), so these are empty stubs until that lands.
logger
Early serial logger (used throughout the kernel lifetime)
modules
Physical boot-module validation and initfs address conversion. Pure conversion of physical boot modules into initfs registration arguments.
panic
Kernel panic handler
symbols
Kernel symbol table for panic backtrace resolution Kernel symbol table for panic backtrace resolution.
toml
Simple TOML parser for kernel boot configuration Minimal TOML subset parser for kernel boot configuration.
virtio_blk
VirtIO block device driver VirtIO block device driver for boot partition access.