Presents the design of a Rust-based bootloader for Multiboot kernels in UEFI x86 systems, suggesting improvements in memory safety.
Current desktop and server computers run on firmware that is compatible to the UEFI standard[37] and responsible for ini- tializing the hardware and loading a bootloader, e.g. GRUB[8]. The bootloader then prepares the early boot environment and hands control over to the operating system. Modern bootloaders provide many features and functionalities such as interactive scripting languages which results in large code bases – GRUB consists of 300 thousand lines of C/C++ and 64 thousand lines of assembly code. It is not surprising that numerous memory safety violations have been detected in various existing bootloaders[39]. We think many of these issues can be addressed by writing a bootloader in Rust. In this paper we present the design and implementation of tow- boot – a bootloader written in Rust for Multiboot 1 and 2 kernels on UEFI-based x86 / x86_64 systems.
No takes yet. Share an insight, caveat, or question.
Niklas Sombert (2026) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: