Comparison of boot loaders

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

Features

Note: The MBR column only refers to whether or not the boot-loader can only be stored in the very first boot sector (of a mass storage device) called the MBR (acronym for Master Boot Record) , while the MBR/VBR column refers to the ability of a boot-loader to be stored in either the MBR or VBR ( a VBR is the first sector of any partition. Acronym for Volume Boot Record ) of the mass storage device. This is correct with regard to the Master Boot Record based partition table.

Name License Can reside in Can boot from Can boot
ESP (UEFI) MBR / VBR MBR only 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
Acronis OS Selector Proprietary ? ? ? Yes Yes Yes Yes Yes Yes Yes Yes ? Yes Yes Yes Yes Yes ? ? Yes Yes
AiR-Boot GPLv3 ? No Yes ? ? ? ? ? ? ? ? ? ? ? Yes Yes Yes ? ? ? ?
AKernelLoader GPLv2 ? No Yes Yes Yes Yes Yes ? Yes Yes ? ? ? ? ? ? Yes ? ? ? ?
Barebox GPLv2 ? No Yes ? Yes Yes Yes Yes Yes Yes No Yes ? ? ? ? Yes ? ? ? ?
Boot Camp Proprietary ? ? ? ? ? ? Yes ? Yes ? ? ? ? ? Yes Yes Yes ? ? ? Yes
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 ? ? ? ?
bootman MIT ? No Yes 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 ? ? ? ?
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+ ? No Yes (SafeBoot) 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+ ? Yes No 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 No 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+ ? Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls NTLDR Calls Windows Boot Manager Yes ? ? ? ?
Gujin GPLv2 ? Yes No Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Calls NTLDR Yes Yes ? ? ? ?
Gummiboot LGPL 2.1 Yes No No ? Yes Yes Yes ? ? ? ? ? No No Windows Server 2013 64bits with UEFI only Calls Windows Boot Manager[1] Yes ? ? UEFI only Yes[1]
LILO BSD license Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes ? ? Yes Calls NTLDR ? Yes ? ? Calls biosboot (FreeBSD, PC-BSD, ...) ?
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 ? Yes No 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 Proprietary ? Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls GRUB or LILO ? ? ? ?
RedBoot mod GPLv2+ ? Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls NTLDR Calls Windows Boot Manager Yes Calls FreeLoader Yes Yes Yes
rEFInd GPLv3/BSD license Yes ? ? ? Yes ? ? Yes ? Yes ? No ? ? Yes Yes Yes ? ? Yes Yes
Smart Boot Manager GPLv2+ ? No Yes Yes Yes Yes Yes Yes Yes ? ? ? Yes Yes Yes ? Yes ? ? Yes ?
SPFdisk GPLv2+ ? Yes Yes Yes Yes Yes ? ? Yes ? ? ? Yes Yes ? ? ? ? ? ? ?
SYSLINUX GPLv2+ ? Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Calls NTLDR Calls Windows Boot Manager Yes ? Yes via mboot.c32 module ?
XOSL GPLv2 ? No No Yes Yes Yes Yes Yes ? No ? No Yes Yes Yes Yes Yes ? ? ? ?
Windows Boot Manager Proprietary Yes Yes No No Yes Yes ? Yes Yes Yes Yes ? ? Yes Calls NTLDR Yes Calls GRUB or LILO ? ? ? ?
FreeLoader (ReactOS Boot Loader) GPLv2+ ? Yes No 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 MBR only 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 i386 (PC) FAT16, FAT32, MINIX fs, Linux ext2, ext3, ext4, ReiserFS, JFS, XFS, VSTa fs, Btrfs FreeBSD, NetBSD, OpenBSD, GNU/Linux ELF TFTP gzip  
GRUB 2 Yes Yes i386 (PC, coreboot, OLPC, Mac), PowerPC (Mac, Pegasos II, IBM), Sun UltraSPARC (SPARC v9) 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), Windows7 ? ? ?  
LILO No No i386 (PC) agnostic ? ? ? bzip2, gzip  
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 i386 (PC) ext2, ext3, ext4, btrfs, ufs 1/2, FAT16, FAT32, iso9660, udf, NTFS (since 4.06), ? GNU/Linux None TFTP gzip, bzip2, lzo, zip, lzma, ?  
AKernelLoader No No x86 (PC) FAT32,ext2,ext3 GNU/Linux ELF,Binary ? ?  
Yaboot No No PowerPC (Open Firmware) ext2, ext3, ext4, hfs GNU/Linux, ? ? ? ?  
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, StrongARM, SH2, SH3, SH4, ... FAT, 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 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, cramfs, nfs Linux ? TFTP, NFS, serial (S-Record, Y-Modem) bzip2, gzip, lzma  
kboot ? ? i386, 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 i386 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 i386 (PC) ? Windows ? ? ? default bootloader on Windows NT
FREELDR No No i386 (PC), ARM, PowerPC ext2, FAT12, FAT16, FAT32, ISO, NTFS 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[4] ? ? ?  
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. 1.0 1.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. ELM - Multiple Boot Manager

External links