Comparison of boot loaders

The following tables compare general and technical information for a number of available boot loaders.

Features

Note: The column MBR (Master Boot Record) refers to whether or not the boot loader can be stored in the first sector of a mass storage device. The column VBR (Volume Boot Record) refers to the ability of the boot loader to be stored in the first sector of any partition on a mass storage device.

Name License Can reside in Can boot from Can boot
ESP (UEFI) MBR VBR Floppy Hard disk Second Hard disk Logical partitions CD-ROM Floppy USB Zip LAN MS-DOS Windows 9x/Me Windows NT series Windows Vista/7/8/10 Linux ReactOS MenuetOS *BSD Mac OS X
Acronis OS Selector Proprietary ? ? ? Yes Yes Yes Yes Yes Yes Yes Yes ? Yes Yes Yes Yes Yes ? ? Yes Yes
AiR-Boot GPLv3 ? Yes No ? ? ? ? ? ? ? ? ? ? ? Yes Yes Yes ? ? ? ?
AKernelLoader GPLv2 ? Yes No Yes Yes Yes Yes ? Yes Yes ? ? ? ? ? ? Yes ? ? ? ?
Barebox GPLv2 Yes Yes No ? Yes Yes Yes Yes Yes Yes No Yes ? ? ? ? Yes ? ? ? ?
BootIt Bare Metal (formerly BootIt Next Generation) Proprietary ? ? ? Yes Yes Yes Yes Yes Yes Yes Yes ? Yes Yes Yes Yes Yes ? ? ? ?
BootKey Proprietary ? No No Yes No No No Yes Yes Yes No No Yes Yes Yes Yes Yes ? ? ? ?
BootManager MIT ? Yes No No Yes ? ? ? ? ? ? No Yes Yes Calls NTLDR Calls Windows Boot Manager Calls GRUB or LILO ? ? ? ?
BootX (Apple) Proprietary ? ? ? ? Yes ? ? ? ? ? ? Yes ? ? ? ? ? ? ? ? Yes
BootX (Linux) Proprietary ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Yes ? ? ? ?
Clover (fork of rEFIt) GPLv2/BSD license Yes Yes Yes Yes Yes Yes ? No ? Yes ? No ? ? Yes Yes Yes ? ? Yes Yes
Darwin Boot Loader APSL 2.0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Yes Yes
Das U-Boot GPLv2 ? ? ? ? Yes Yes Yes Yes Yes Yes No Yes ? ? ? ? Yes ? ? Yes (FreeBSD) ?
GAG GPLv2+ ? Yes (SafeBoot) No Yes Yes Yes Yes Yes Yes Yes No No Yes Yes Calls NTLDR Calls Windows Boot Manager Calls GRUB or LILO Calls bootloader Calls bootloader Calls bootloader No
GRUB Legacy GPLv2+ No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls NTLDR Calls Windows Boot Manager Yes Calls FreeLoader Yes Yes Yes
GNU GRUB GPLv3 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls NTLDR Calls Windows Boot Manager Yes Calls FreeLoader Yes Yes Yes
GRUB4DOS GPLv2+ ? No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls NTLDR Calls Windows Boot Manager Yes ? ? ? ?
Gujin GPLv2 ? No Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Calls NTLDR Yes Yes ? ? ? ?
systemd-boot / Gummiboot LGPL 2.1 Yes No No ? Yes Yes Yes ? ? Yes ? ? No No Windows Server 2013 64bits with UEFI only Calls Windows Boot Manager[1] Yes ? ? UEFI only Yes[1]
iBoot Proprietary Yes ? ? ? Yes ? Yes Yes ? ? ? ? ? ? ? ? ? ? ? ? Yes
LILO BSD license Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes ? ? Yes Calls NTLDR Yes Yes ? ? Calls biosboot (FreeBSD, PC-BSD, ...) ?
loader(8) BSD license Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes ? Yes ? ? ? ? ? ? ? Yes (FreeBSD, TrueOS) ?
loadlin GPLv2+ ? No No Yes Yes Yes Yes Yes Yes Yes Yes Yes No No No No Yes No No ? ?
MasterBooter Proprietary ? Yes ? ? Yes Yes Yes ? Yes ? ? ? Yes Yes Yes Yes Yes ? ? Yes ?
NTLDR Proprietary ? No Yes Yes Yes ? No No Yes Yes ? ? Yes Yes Yes No Calls GRUB4DOS ? ? ? Calls Darwin bootloader[2]
OSL2000 Boot Manager Proprietary ? Yes Yes No Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes Yes Calls GRUB or LILO ? ? ? ?
PLoP Bootmanager, Plop Boot Manager Six (PBM6) Proprietary ? Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls GRUB or LILO ? ? ? ?
RedBoot GPLv2+ ? No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls NTLDR Calls Windows Boot Manager Yes Calls FreeLoader Yes Yes Yes
rEFInd (fork of rEFIt) GPLv3/BSD license Yes Yes Yes Yes Yes Yes ? Yes ? Yes ? Yes ? ? Yes Yes Yes ? ? Yes Yes
rEFIt (not maintained) GPLv2/BSD license Yes Yes Yes Yes Yes Yes ? No ? Yes ? No ? ? Yes Yes Yes ? ? Yes Yes
Smart Boot Manager GPLv2+ ? Yes No Yes Yes Yes Yes Yes Yes ? ? ? Yes Yes Yes ? Yes ? ? Yes ?
SPFdisk GPLv2+ ? Yes Yes Yes Yes Yes ? ? Yes ? ? ? Yes Yes ? ? ? ? ? ? ?
SYSLINUX GPLv2+ No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls NTLDR Calls Windows Boot Manager Yes ? Yes via mboot.c32 module ?
Tianocore EDK II BSD-2-Clause ? No No No Yes Yes ? Yes ? Yes No Yes No No No Yes Yes No ? Yes (FreeBSD,OpenBSD) Yes
XOSL GPLv2 ? No No Yes Yes Yes Yes Yes ? No ? No Yes Yes Yes Yes Yes ? ? ? ?
Windows Boot Manager Proprietary Yes No Yes No Yes Yes ? Yes Yes Yes Yes ? ? Yes Calls NTLDR Yes Calls GRUB or LILO ? ? ? ?
FreeLoader (ReactOS Boot Loader) GPLv2+ ? No Yes Yes Yes Yes ? Yes Yes Yes Yes ? Yes Yes Partial[3] Calls Windows Boot Manager Yes Yes ? ? ?
Name Software license Can reside in Can boot from Can boot
ESP (UEFI) MBR VBR Floppy Hard disk Second hard disk Logical partitions CD-ROM Floppy USB Zip LAN MS-DOS Windows 9x/Me Windows NT series Windows Vista/7/8 Linux ReactOS MenuetOS *BSD Mac OS X

Technical information

Name Advanced command Scriptable Supported architecture Supported filesystem Supported OS Supported executable Supported protocol Supported decompression Others
GRUB Legacy Yes No x86 (PC) FAT16, FAT32, MINIX fs, Linux ext2, ext3, ext4, ReiserFS, JFS, XFS, VSTa fs, Btrfs FreeBSD, NetBSD, OpenBSD, Linux ELF TFTP gzip  
GRUB 2 Yes Yes x86 (PC, UEFI, coreboot, OLPC, Mac), IA-64, ARM (U-Boot, UEFI), PowerPC (Mac, Pegasos II, IBM), MIPS, SPARC (SPARC v9), QEMU ext2, ext3, ext4, btrfs, zfs, ufs, minix, iso9660, udf, jfs, hfs, hfs+, afs, affs, sfs, xfs, reiserfs, tar, cpio, NTFS, FAT16, FAT32 Linux (PC, mac), FreeBSD (PC), OpenBSD (PC), NetBSD (PC) Multiboot and others ? gzip, xz[4]  
LILO No No x86 (PC) indifferent ? ? ? bzip2, gzip  
loader(8) Yes Yes x86 (PC, UEFI, coreboot, OLPC, Mac), ARM (U-Boot, UEFI), MIPS, PowerPC, SPARC v9 FAT12/FAT16/FAT32/VFAT, ext2, NANDFS, ISO-9660, UFS, ZFS FreeBSD ELF TFTP, NFS gzip, bzip2  
LOLO (Logic PD) Yes Yes ARM7, ARM9, ARM11, Cortex-A8, StrongARM, SH, ColdFire FAT16, FAT32, YAFFS1, YAFFS2 Linux, WinCE ELF, binary, BIN (WinCE), SREC TFTP ? Supported devices: MCF54xx, MCF5329, MCF5373, LLH7A400, LLH7A404, LLH79520, LLH79524, LSH7727, LSH7750, LSH7760, PXA270, PXA320, IMX31, IMX27, OMAP35xx, OMAP37xx
SYSLINUX via cmd.c32 module via lua.c32 module x86 (PC) ext2, ext3, ext4, btrfs, ufs 1/2, FAT16, FAT32, iso9660, udf, NTFS (since 4.06), ? Linux Multiboot[5] TFTP gzip, bzip2, lzo, zip, lzma, ?  
AKernelLoader No No x86 (PC) FAT32, ext2, ext3 Linux ELF, Binary ? ?  
Yaboot No No PowerPC (Open Firmware) ext2, ext3, ext4, hfs Linux, FreeBSD, NetBSD, OpenBSD, Mac OS X ? ? ?  
RedBoot Yes yes (boot only) ARM, ColdFire, H8300, x86, Freescale/Motorola 68000, MIPS, PPC, SH, SPARC, SPARCLite JFFS2 Linux, eCos ELF TFTP, serial (X-modem) gzip  
Das U-Boot Yes Yes PPC, ARM, AVR32, Blackfin, ColdFire, IXP, Leon2, m68k, MicroBlaze, MIPS, NIOS, NIOS2, PXA, x86, RISC-V, StrongARM, SH2, SH3, SH4, ... FAT12(RO), FAT16, FAT32, VFAT, ext2, ext3, ext4, jffs2, cramfs, reiserfs, yaffs2, ubifs, nfs 4_4bsd, Artos, Dell, Esix, FreeBSD, Irix, Linux, LynxOS, NCR, NetBSD, OpenBSD, pSOS, QNX, RTEMS, SCO, Solaris, SVR4, U-Boot, VXworks EFI, ELF, U-Boot image format TFTP, NFS, serial (S-Record, Y-Modem, Kermit binary protocol) bzip2, gzip, lzma  
Barebox Yes Yes ARM, Blackfin, NIOS2, MIPS, x86, PPC FAT, VFAT, ext2, ext3, ext4, bpkfs, cramfs, NFS, EFI, efivarfs, ubifs Linux ELF, U-Boot image format TFTP, NFS, serial (S-Record, Y-Modem, Kermit binary protocol) bzip2, gzip, lz4, xz, lzo  
kboot ? ? x86, PowerPC64 most supported by Linux Kernel (ext2, ext3, ext4, reiserfs, xfs, jfs, etc..) Linux ? HTTP, FTP, TFTP ? SSH, NFS support. kexec-based bootloader.
Runnix ? ? ? ? Linux ? ? ? kexec and SYSLINUX based bootloader.
kexec-loader No No x86 most supported by Linux Kernel (ext2, ext3, ext4, reiserfs, xfs, jfs, etc..) Linux/multiboot ? No networking gzip (for kernel modules) Kernel/multiboot module support
NTLDR No No x86 (PC) ? Windows ? ? ? default bootloader on Windows NT
TianoCore EDK II Yes Yes ARM, RISC-V, x86 FAT12, FAT16, FAT32, VFAT FreeBSD, OpenBSD, Linux, Windows EFI HTTPS UEFI UEFI reference implementation
Windows Boot Manager No No x86 (PC), ARM (only on Windows Mobile remake) NTFS Windows Vista, 7, 8, and 10 Portable Executable ? ? Successor of NTLDR; used on Vista and up.
FREELDR No No x86 (PC), ARM, PowerPC ext2, FAT12, FAT16, FAT32, ISO, NTFS,BtrFS ReactOS, Linux, Windows NT 4.0, Windows 2000, Windows XP, Windows 2003 ? ? ? clone of NTLDR
boot0 ? ? ? ? ? ? ? ? FreeBSD's master boot record
extipl ? ? ? ? ? ? ? ? IBM IPL upper compatible
Multiple Boot Manager ? ? ? ? PC DOS, MS-DOS, Windows, OS/2, Linux, FreeBSD, NetBSD, OpenBSD, BeOS, B-right/V, Solaris, OpenStep, Plan 9, EOTA[6] ? ? ?  
bootload (Technologic Systems) ? ? ARM ? Linux ? ? ? Proprietary
Name Advanced command Scriptable Supported architecture Supported filesystem Supported OS Supported executable Supported protocol Supported decompression Others

Notes

  1. Rod Smith, "Managing EFI Boot Loaders for Linux: Using gummiboot", 5 November 2012.
  2. http://wiki.osx86project.org/wiki/index.php/Chain0
  3. http://www.reactos.org/newsletter-37 - Freeloader can load Windows Server 2003 directly, as long as it is on a FAT32 partition
  4. "GNU GRUB Manual 2.02: Features".
  5. "Mboot.c32 - Syslinux Wiki". www.syslinux.org. Retrieved 2018-10-12.
  6. ELM - Multiple Boot Manager
gollark: The correct term for "unbased" is actually "debased" or "acidic".
gollark: 🤣ing to your own jokes is highly uncool in many cultures.
gollark: There are probably loads of cool old animal species we don't know about because they never got fossilized/found.
gollark: I don't really know much about old animal stuff, though my brother is into dinosaurs.
gollark: Oh dear. I live in temperate regions. very troubling.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.