[−][src]Crate multiboot2
An experimental Multiboot 2 crate for ELF-64/32 kernels.
The GNU Multiboot specification aims provide to a standardised method of sharing commonly used information about the host machine at boot time.
Examples
use multiboot2::load; // The Multiboot 2 specification dictates that the machine state after the // bootloader finishes its job will be that the boot information struct pointer // is stored in the `EBX` register. let multiboot_info_ptr: u32; unsafe { asm!("mov $2, %ebx" : "=r"(multiboot_info_ptr)) }; let boot_info = unsafe { load(multiboot_info_ptr) };
Structs
BootInformation | A Multiboot 2 Boot Information struct. |
BootLoaderNameTag | This Tag contains the name of the bootloader that is booting the kernel. |
CommandLineTag | This Tag contains the command line string. |
ElfSection | A single generic ELF Section. |
ElfSectionFlags | ELF Section bitflags. |
ElfSectionIter | An iterator over some ELF sections. |
ElfSectionsTag | This tag contains section header table from an ELF kernel. |
FramebufferColor | A framebuffer color descriptor in the palette. |
FramebufferField | An RGB color type field. |
FramebufferTag | The VBE Framebuffer information Tag. |
MemoryArea | A memory area entry descriptor. |
MemoryAreaIter | An iterator over Available memory areas. |
MemoryMapTag | This Tag provides an initial host memory map. |
ModuleIter | An iterator over all module tags. |
ModuleTag | This tag indicates to the kernel what boot module was loaded along with the kernel image, and where it can be found. |
RsdpV1Tag | This tag contains a copy of RSDP as defined per ACPI 1.0 specification. |
RsdpV2Tag | This tag contains a copy of RSDP as defined per ACPI 2.0 or later specification. |
VBECapabilities | The Capabilities field indicates the support of specific features in the graphics environment. |
VBEControlInfo | VBE controller information. |
VBEDirectColorAttributes | The DirectColorModeInfo field describes important characteristics of direct color modes. |
VBEField | A VBE colour field. |
VBEInfoTag | This tag contains VBE metadata, VBE controller information returned by the VBE Function 00h and VBE mode information returned by the VBE Function 01h. |
VBEModeAttributes | A Mode attributes bitfield. |
VBEModeInfo | Extended information about a specific VBE display mode from the
mode list returned by |
VBEWindowAttributes | The WindowAttributes describe the characteristics of the CPU windowing scheme such as whether the windows exist and are read/writeable, as follows: |
Enums
ElfSectionType | An enum abstraction over raw ELF section types. |
FramebufferType | The type of framebuffer. |
MemoryAreaType | An enum of possible reported region types. |
VBEMemoryModel | The MemoryModel field specifies the general type of memory organization used in modes. |
Functions
load⚠ | Load the multiboot boot information struct from an address. |
load_with_offset⚠ | Load the multiboot boot information struct from an address at an offset. |