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.
Storage medium support
Name | License | Can reside in | Can boot from | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ESP (UEFI) | MBR | VBR | Floppy | Hard disk | Second Hard disk | Logical partitions | CD-ROM | Floppy | USB | Zip | LAN | ||
Acronis OS Selector | Proprietary | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? |
AiR-BOOT | GPLv3 | ? | Yes | No | ? | ? | ? | ? | ? | ? | ? | ? | ? |
AKernelLoader | GPLv2 | ? | Yes | No | Yes | Yes | Yes | Yes | ? | Yes | Yes | ? | ? |
Barebox | GPLv2 | Yes | Yes | No | ? | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes |
BOOTBOOT | MIT | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | No | No |
Boot Manager | Proprietary | No | No | No | No | Yes | Yes | Yes | No | No | ? | ? | No |
BootIt Bare Metal (formerly BootIt Next Generation) | Proprietary | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? |
BootKey | Proprietary | ? | No | No | Yes | No | No | No | Yes | Yes | Yes | No | No |
BootManager | MIT | ? | Yes | No | No | Yes | ? | ? | ? | ? | ? | ? | No |
BootX (Apple) | Proprietary | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | Yes |
BootX (Linux) | Proprietary | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Clover (fork of rEFIt) | GPLv2/BSD license | Yes | Yes | Yes | Yes | Yes | Yes | ? | No | ? | Yes | ? | No |
Darwin Boot Loader | APSL 2.0 | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Das U-Boot | GPLv2 | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes |
GAG | GPLv2+ | ? | Yes (SafeBoot) | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
GRUB Legacy | GPLv2+ | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
GNU GRUB | GPLv3 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Grub2Win | GPLv3 | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
GRUB4DOS | GPLv2+ | ? | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Gujin | GPLv2 | ? | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
systemd-boot / Gummiboot | LGPL 2.1 | Yes | No | No | No | Yes | Yes | Yes | ? | ? | Yes | ? | ? |
iBoot | Proprietary | Yes | ? | ? | ? | Yes | ? | Yes | Yes | ? | ? | ? | ? |
LILO | BSD license | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? |
loader(8) | BSD license | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? | Yes |
loadlin | GPLv2+ | ? | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
MasterBooter | Proprietary | ? | Yes | ? | ? | Yes | Yes | Yes | ? | Yes | ? | ? | ? |
NTLDR | Proprietary | ? | No | Yes | Yes | Yes | ? | No | No | Yes | Yes | ? | ? |
OSL2000 Boot Manager | Proprietary | ? | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
PLoP Bootmanager, Plop Boot Manager Six (PBM6) | Proprietary | ? | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
RedBoot | GPLv2+ | ? | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
rEFInd (fork of rEFIt) | GPLv3/BSD license | Yes | No | No | No | Yes | Yes | ? | Yes | ? | Yes | ? | Yes |
rEFIt (not maintained) | GPLv2/BSD license | Yes | No | No | No | Yes | Yes | ? | No | ? | Yes | ? | No |
Smart Boot Manager | GPLv2+ | ? | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? |
SPFdisk | GPLv2+ | ? | Yes | Yes | Yes | Yes | Yes | ? | ? | Yes | ? | ? | ? |
SYSLINUX | GPLv2+ | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Tianocore EDK II | BSD-2-Clause | ? | No | No | No | Yes | Yes | ? | Yes | ? | Yes | No | Yes |
XOSL | GPLv2 | ? | No | No | Yes | Yes | Yes | Yes | Yes | ? | No | ? | No |
Windows Boot Manager | Proprietary | Yes | No | Yes | No | Yes | Yes | ? | Yes | Yes | Yes | Yes | ? |
FreeLoader (ReactOS Boot Loader) | GPLv2+ | ? | No | Yes | Yes | Yes | Yes | ? | Yes | Yes | Yes | Yes | ? |
Name | License | Can reside in | Can boot from | ||||||||||
ESP (UEFI) | MBR | VBR | Floppy | Hard disk | Second Hard disk | Logical partitions | CD-ROM | Floppy | USB | Zip | LAN | ||
Operating system support
Name | Can boot | ||||||||
---|---|---|---|---|---|---|---|---|---|
MS-DOS | Windows 9x/Me | Windows NT series | Windows Vista/7/8/10 | Linux | ReactOS | MenuetOS | *BSD | Mac OS X | |
Acronis OS Selector | Yes | Yes | Yes | Yes | Yes | ? | ? | Yes | Yes |
AiR-BOOT | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? |
AKernelLoader | ? | ? | ? | ? | Yes | ? | ? | ? | ? |
Barebox | ? | ? | ? | ? | Yes | ? | ? | ? | ? |
BOOTBOOT | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? |
Boot Manager | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? |
BootIt Bare Metal (formerly BootIt Next Generation) | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? |
BootKey | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? |
BootManager | Yes | Yes | Calls NTLDR | Calls Windows Boot Manager | Calls GRUB or LILO | ? | ? | ? | ? |
BootX (Apple) | ? | ? | ? | ? | ? | ? | ? | ? | Yes |
BootX (Linux) | ? | ? | ? | ? | Yes | ? | ? | ? | ? |
Clover (fork of rEFIt) | ? | ? | Yes | Yes | Yes | ? | ? | Yes | Yes |
Darwin Boot Loader | ? | ? | ? | ? | ? | ? | ? | Yes | Yes |
Das U-Boot | ? | ? | ? | ? | Yes | ? | ? | Yes (FreeBSD) | ? |
GAG | Yes | Yes | Calls NTLDR | Calls Windows Boot Manager | Calls GRUB or LILO | Calls bootloader | Calls bootloader | Calls bootloader | No |
GRUB Legacy | Yes | Yes | Calls NTLDR | Calls Windows Boot Manager | Yes | Calls FreeLoader | Yes | Yes | Yes |
GNU GRUB | Yes | Yes | Calls NTLDR | Calls Windows Boot Manager | Yes | Calls FreeLoader | Yes | Yes | Yes |
Grub2Win | Yes | Yes | Calls NTLDR | Calls Windows Boot Manager | Yes | ? | ? | Yes (FreeBSD) | Calls Clover |
GRUB4DOS | Yes | Yes | Calls NTLDR | Calls Windows Boot Manager | Yes | ? | ? | ? | ? |
Gujin | Yes | Yes | Calls NTLDR | Yes | Yes | ? | ? | ? | ? |
systemd-boot / Gummiboot | No | No | Windows Server 2013 64bits with UEFI only | Calls Windows Boot Manager[1] | Yes | ? | ? | UEFI only | Yes[1] |
iBoot | ? | ? | ? | ? | ? | ? | ? | ? | Yes |
LILO | ? | Yes | Calls NTLDR | Yes | Yes | ? | ? | Calls biosboot (FreeBSD, PC-BSD, ...) | ? |
loader(8) | ? | ? | ? | ? | ? | ? | ? | Yes (FreeBSD, TrueOS) | ? |
loadlin | with MEMDISK | No | No | No | Yes | No | No | ? | ? |
MasterBooter | Yes | Yes | Yes | Yes | Yes | ? | ? | Yes | ? |
NTLDR | Yes | Yes | Yes | No | Calls GRUB4DOS | ? | ? | ? | Calls Darwin bootloader[2] |
OSL2000 Boot Manager | Yes | Yes | Yes | Yes | Calls GRUB or LILO | ? | ? | ? | ? |
PLoP Bootmanager, Plop Boot Manager Six (PBM6) | Yes | Yes | Yes | Yes | Calls GRUB or LILO | ? | ? | ? | ? |
RedBoot | Yes | Yes | Calls NTLDR | Calls Windows Boot Manager | Yes | Calls FreeLoader | Yes | Yes | Yes |
rEFInd (fork of rEFIt) | ? | ? | Yes | Yes | Yes | ? | ? | Yes | Yes |
rEFIt (not maintained) | ? | ? | Yes | Yes | Yes | ? | ? | Yes | Yes |
Smart Boot Manager | Yes | Yes | Yes | ? | Yes | ? | ? | Yes | ? |
SPFdisk | Yes | Yes | ? | ? | ? | ? | ? | ? | ? |
SYSLINUX | Yes | Yes | Calls NTLDR | Calls Windows Boot Manager | Yes | ? | Yes | via mboot.c32 module | ? |
Tianocore EDK II | No | No | No | Yes | Yes | No | ? | Yes (FreeBSD,OpenBSD) | Yes |
XOSL | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? |
Windows Boot Manager | ? | Yes | Calls NTLDR | Yes | Calls GRUB or LILO | ? | ? | ? | ? |
FreeLoader (ReactOS Boot Loader) | Yes | Yes | Partial[3] | Calls Windows Boot Manager | Yes | Yes | ? | ? | ? |
Name | Can boot | ||||||||
MS-DOS | Windows 9x/Me | Windows NT series | Windows Vista/7/8/10 | 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 | |
loadlin | Yes | Yes | x86 (PC) | FAT12/FAT16/FAT32/VFAT | Linux | ELF | ? | 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 | 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 | ? | ? | |
BOOTBOOT | Yes | No | x86-64 (PC, UEFI, El Torito CDROM, BSS Expansion ROM, UEFI Option ROM), ARM AArch64 (Raspberry Pi 3 and up), QEMU, VirtualBox, GRUB (via Multiboot) | indifferent[6] | Any BOOTBOOT Protocol compliant | ELF64 / PE32+ | ? | gzip | comes with a multiplatform, dependency-free bootable hybrid image creator (FOSS) |
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[7] | ? | ? | ? | |
bootload (Technologic Systems) | ? | ? | ARM | ? | Linux | ? | ? | ? | Proprietary |
Name | Advanced command | Scriptable | Supported architecture | Supported filesystem | Supported OS | Supported executable | Supported protocol | Supported decompression | Others |
Notes
- Rod Smith, "Managing EFI Boot Loaders for Linux: Using gummiboot", 5 November 2012.
- http://wiki.osx86project.org/wiki/index.php/Chain0
- http://www.reactos.org/newsletter-37 - Freeloader can load Windows Server 2003 directly, as long as it is on a FAT32 partition
- "GNU GRUB Manual 2.02: Features".
- "Mboot.c32 - Syslinux Wiki". www.syslinux.org. Retrieved 2018-10-12.
- "BOOTBOOT Protocol: File System Drivers" (PDF).
- ELM - Multiple Boot Manager
External links
- FreeLoader in the ReactOS Wiki
- PLoP Let you boot legacy PCs from CD-ROM and USB without BIOS support
- TianoCore
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.