Since time immemorial, Linux has booted from a bootloader. This is due to the architecture of the IBM PC, where the CPU reads a sector from the configured disk and is limited to 510 bytes of code. That’s not enough code to understand the filesystem that the kernel is on, so most bootloaders are two-stage, loading the initial 510 bytes, then loading enough second-stage code to understand ext4 or whatever, and then the kernel is booted.
Over time, we’ve moved from loadlin, then LILO, then GRUB, and now GRUB2. SYSLINUX, PXELINUX, EXTLINUX have also been in the mix and there are others.
Now a RedHat engineer, Marta Lewandowska, has a different idea. You can check out her full talk on YouTube (below) entitled “No more bootloader: Please use the kernel instead” presented at DevConf.CZ 2024.
Her project is called nmbl (“no more bootloader”, pronounced “nimble”) and aims to replace traditional bootloaders with the kernel itself. GRUB works, but it has been a source of security vulnerabilities and a lot of its code is duplicated in the kernel itself.
What benefits might nmbl bring?
- Faster boot times, since there’s no bootloader involved. There are two variants on nmbl and one allows multi-booting into different kernels.
- In theory, security is improved because there’s less code and less attack surface.
- Future feature development should be easier since there’s one platform and not a multi-stage scaffold to work on.
Is it the future? Some comments on the LWN writeup are skeptical. Check out the creator’s blog post on nmbl and the presentation:
Related Posts:
- Inception Hosting is Closing Its Doors - November 12, 2024
- How Will the 2024 Election Results Affect Tech? - November 11, 2024
- Triple Header: The Greatest Thanksgiving Turkey Recipe of All Time, a Bonus Code for RackNerd’s Giveaway, and Fantastic Deals on Cheap VPS Offers! - November 10, 2024
Do modern systems still use GRUB? I thought that at least some people were migrating to systemd-boot.