Comparison of bootloaders

(Redirected from SPFdisk)

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

General information

edit
Name Developer / Publisher Current version Initial release date Latest release date License Cost Website / documentation
Acronis OS Selector Acronis International GmbH ? ? ? Proprietary $49.95 (personal use)
$79.99 (commercial, per seat)
$299.99 (server)
Official website
Barebox Sascha Hauer
the barebox community
? ? ? GPL-2.0-only No cost Official website
BootManager ? ? ? ? MIT No cost ?
BootX (Apple) Apple Inc. ? ? ? Proprietary bundled with macOS ?
BootX (Linux) Benjamin Herrenschmidt ? ? ? Proprietary No cost ?
Clover (fork of rEFIt) https://github.com/CloverHackyColor/CloverBootloader/graphs/contributors Multi Contributors] 5157 October 3, 2013 29 June 2024 GPLv2/BSD-2-Clause No cost Official website

Source repository

Das U-Boot DENX Software Engineering 2025.07   7 July 2025   GPL-2.0-or-later No cost Official website
GRUB Legacy GNU Project 8 May 2005 GPL-2.0-or-later No cost
GNU GRUB GNU Project 2.12[1]   1995 20 December 2023 GPL-3.0-or-later No cost Official website
Grub2Win Drummerdp 2.4.2.4 2010 April 2, 2025 GPLv3 No cost Official website
GRUB4DOS 31 March 2009 GPL-2.0-only[a] Official website
iBoot Apple Inc. iBoot-11881.62.2~1 June 29, 2007 December 9, 2024 Proprietary
LILO BSD-3-Clause
Limine mintsuki 9.6.1[3]   April 6, 2020 16 August 2025 BSD-2-Clause No cost Official website
loadlin GPL-2.0-or-later
NTLDR Microsoft July 27, 1993 (Windows NT 3.1) Proprietary bundled with Windows
RedBoot GPL-2.0-or-later (eCos license)
rEFInd (fork of rEFIt) Roderick W. Smith 0.14.4.2 March 14, 2012 6 April 2024 GPL-3.0-or-later/BSD-3-Clause No cost Official website
rEFIt Christoph Pfisterer 0.14 March 2, 2006 7 March 2010 GPL-2.0-or-later/BSD-3-Clause No cost Official website
SYSLINUX 6 October 2014 GPL-2.0-or-later
systemd-boot / Gummiboot LGPL-2.1-or-later
TianoCore EDK II BSD-2-Clause
Windows Boot Manager Microsoft January 30, 2007 (Windows Vista) Proprietary bundled with Windows
XOSL 20 August 2002 GPL-2.0-only
Name Developer / Publisher Current version Initial release date Latest release date License Cost Website / documentation
  1. ^ While most parts of GRUB4DOS are under GPL-2.0-or-later, the whole software is limited to GPL-2.0-only due to incorporating some code from Linux.[2]

Technical information

edit

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

edit
Name 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 ? ? ? Yes Yes Yes Yes Yes Yes Yes Yes ?
Barebox Yes Yes No ? Yes Yes Yes Yes Yes Yes No Yes
BootKey ? No No Yes No No No Yes Yes Yes No No
BootManager ? Yes No No Yes ? ? ? ? ? ? No
BootX (Apple) Yes No No No Yes No No Yes No Yes Yes Yes
BootX (Linux) No No No Yes Yes Yes No Yes Yes Yes Yes Yes
Das U-Boot Yes Yes ? ? Yes Yes Yes Yes Yes Yes No Yes
GRUB Legacy No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
GNU GRUB Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
GRUB4DOS ? No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
iBoot Yes ? ? ? Yes ? ? No ? ? ? ?
LILO Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes ?
Limine Yes Yes No No Yes Yes Yes Yes No Yes Yes Yes
loadlin ? No No Yes Yes Yes Yes Yes Yes Yes Yes Yes
NTLDR ? No Yes Yes Yes ? No No Yes Yes ? ?
RedBoot ? No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
rEFInd Yes No No No Yes Yes ? Yes ? Yes ? Yes
rEFIt (not maintained) Yes No No No Yes Yes ? No ? Yes ? No
SPFdisk ? Yes Yes Yes Yes Yes ? ? Yes ? ? ?
SYSLINUX No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
systemd-boot / Gummiboot Yes No No No Yes Yes Yes ? ? Yes ? ?


Windows Boot Manager Yes No Yes No Yes Yes ? Yes Yes Yes Yes ?
XOSL ? No No Yes Yes Yes Yes Yes ? No ? No
Name 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

edit
Name Can boot
MS-DOS Windows 9x/Me Windows NT series before Vista Windows Vista/7/8/10 Linux ReactOS MenuetOS *BSD Mac OS X
Acronis OS Selector Yes Yes Yes Yes Yes ? ? Yes Yes
Barebox ? ? ? ? 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 ? ? ? ?
Das U-Boot ? ? ? ? Yes ? ? Yes (FreeBSD) ?
GRUB Legacy and GRUB4DOS Yes Yes Calls NTLDR Calls Windows Boot Manager Yes Calls FreeLoader Yes Calls bootloader for some kernels Yes
GNU GRUB Yes Yes Calls NTLDR Calls Windows Boot Manager Yes Calls FreeLoader Yes Yes Yes
iBoot ? ? ? ? ? ? ? ? Yes
LILO ? Yes Calls NTLDR Yes Yes ? ? Calls biosboot (FreeBSD, PC-BSD, ...) ?
loadlin with MEMDISK No No No Yes No No ? ?
Limine Calls bootloader Calls bootloader Calls bootloader Calls bootloader Yes Calls bootloader Calls bootloader Calls bootloader Calls bootloader
NTLDR Yes Yes Yes No Calls GRUB4DOS ? ? ? Calls Darwin bootloader[4]
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
SPFdisk Yes Yes ? ? ? ? ? ? ?
SYSLINUX Yes Yes Calls NTLDR Calls Windows Boot Manager Yes ? Yes via mboot.c32 module [1] ?
systemd-boot / Gummiboot No No Windows Server 2013 64bits with UEFI only Calls Windows Boot Manager[5] Yes ? ? UEFI only Yes[5]
Windows Boot Manager ? Yes Calls NTLDR Yes Calls GRUB or LILO ? ? ? ?
XOSL Yes Yes Yes Yes Yes ? ? ? ?
Name Can boot
MS-DOS Windows 9x/Me Windows NT series before Vista Windows Vista/7/8/10 Linux ReactOS MenuetOS *BSD Mac OS X

File-system support

edit

Non-journaled

edit
Name FAT Minix ext2 HFS AFFS F2FS YAFFS
FAT12 FAT16 FAT32 exFAT YAFFS1 YAFFS2
Acronis OS Selector ? ? ? ? ? ? ? ? ? ? ?
Barebox Yes Yes Yes ? No Yes No No No ? ?
BootX (Apple) ? ? ? ? ? ? ? ? ? ? ?
BootX (Linux) ? ? ? ? ? ? ? ? ? ? ?
Das U-Boot Yes Yes Yes ? ? Yes ? ? ? ? ?
FreeLoader (ReactOS) Yes Yes Yes ? ? Yes ? ? ? ? ?
GNU GRUB 2 Yes Yes Yes Yes Yes Yes Yes Yes Yes ? ?
GRUB Legacy Yes Yes Yes No Yes Yes No No No ? ?
Grub2Win ? ? ? ? ? ? ? ? ? ? ?
GRUB4DOS Yes Yes Yes No Yes Yes No No No ? ?
iBoot ? ? ? ? ? ? ? ? ? ? ?
LILO ? ? ? ? ? ? ? ? ? ? ?
Limine[6][7] Yes Yes Yes No No No No No No No No
loader (FreeBSD) Yes Yes Yes ? ? Yes ? ? ? ? ?
loadlin Yes Yes Yes No No No No No No No No
NTLDR ? Yes Yes ? ? No No No No ? ?
RedBoot ? ? ? ? ? ? ? ? ? ? ?
rEFInd Yes[a] ? ? Yes[b] ? ? ? ? ?
rEFIt ? ? ? ? ? ? ? ? ? ? ?
Syslinux Yes Yes Yes No No Yes No No No ? ?
systemd-boot / Gummiboot ? ? ? ? ? ? ? ? ? ? ?
Windows Boot Manager ? ? Yes Yes ? ? No ? ? ? ?
XOSL ? ? ? ? ? ? ? ? ? ? ?
yaboot ? ? ? ? ? Yes Yes ? ? ? ?

Journaled

edit
Name NTFS ext3 ext4 ReiserFS Reiser4 JFS XFS UFS UDF HFS+ BeFS AFS SFS UBIFS JFFS2
Acronis OS Selector ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Barebox ? Yes Yes ? ? ? ? ? ? ? ? ? ? Yes Yes
BootManager ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
BootX (Apple) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
BootX (Linux) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Das U-Boot ? Yes Yes Yes ? ? ? Yes ? ? ? ? ? Yes Yes
FreeLoader (ReactOS) Yes ? ? ? ? ? ? ? ? ? ? ? ? ? ?
GNU GRUB 2 Yes Yes Yes Yes No Yes Yes Yes Yes Yes Yes Yes Yes ? ?
GRUB Legacy No Yes patch[a] Yes[b] No Yes[b] Yes[b] Yes[b] No No No No No No No
Grub2Win ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
GRUB4DOS Yes Yes Yes Yes[b] No Yes[b] Yes[b] Yes[b] ? ? ? ? ? ? ?
iBoot ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
LILO ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Limine No No No No No No No No No No No No No No No
loader (FreeBSD) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
loadlin Yes[c] No No No No No No No No No No No No No No
NTLDR Yes No No No No No No No No No No No No No No
RedBoot ? ? ? ? ? ? ? ? ? ? ? ? ? ? Yes
rEFInd Partial[d] Yes[d] Yes[d] ? ? ? ? ? ? Yes[d] ? ? ? ? ?
rEFIt ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Syslinux Yes Yes Partial[e] No No No Yes Yes Yes No No No No No No
systemd-boot / Gummiboot ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Windows Boot Manager Yes No No No No No No No ? No No No No No No
XOSL ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
yaboot ? Yes Yes ? ? ? ? ? ? ? ? ? ? ? ?


Copy-on-write

edit
Name btrfs APFS ZFS NILFS ReFS
Acronis OS Selector ? ? ? ? ?
Barebox No No No No ?
BootManager ? ? ? ? ?
BootX (Apple) ? ? ? ? ?
BootX (Linux) ? ? ? ? ?
Das U-Boot ? ? Yes ? ?
FreeLoader (ReactOS) Yes ? ? ? ?
GNU GRUB 2 Yes No Yes Yes ?
GRUB Legacy No No No No ?
Grub2Win ? ? ? ? ?
GRUB4DOS No No No No ?
iBoot ? ? ? ? ?
LILO ? ? ? ? ?
Limine[8][9] No No No No ?
loader (FreeBSD) ? ? Yes ? ?
loadlin No No No No ?
NTLDR No No No No ?
RedBoot ? ? ? ? ?
rEFInd Yes[a] ? ? ? ?
rEFIt ? ? ? ? ?
Syslinux Yes No No No ?
systemd-boot / Gummiboot ? ? ? ? ?
Windows Boot Manager ? No ? ? ?
XOSL ? ? ? ? ?
yaboot ? ? ? ? ?

Read-only

edit
Name cpio tar ISO 9660 romfs SquashFS cramfs
Acronis OS Selector ? ? ? ? ? ?
Barebox ? ? ? ? Yes[a] Yes
BootManager ? ? ? ? ? ?
BootX (Apple) ? ? ? ? ? ?
BootX (Linux) ? ? ? ? ? ?
Das U-Boot ? ? ? ? Yes[b] Yes
FreeLoader (ReactOS) ? ? ? ? ? ?
GNU GRUB 2 Yes Yes Yes Yes Yes ?
GRUB Legacy ? ? Yes[c] ? ? ?
Grub2Win ? ? ? ? ? ?
GRUB4DOS ? ? Yes[c] ? ? ?
iBoot ? ? ? ? ? ?
LILO ? ? ? ? ? ?
Limine No No Yes No No No
loader (FreeBSD) ? ? ? ? ? ?
loadlin No No Yes[d] ? ? ?
NTLDR ? ? ? ? ? ?
RedBoot ? ? ? ? ? ?
rEFInd ? ? Yes[e] ? ? ?
rEFIt ? ? ? ? ? ?
Syslinux ? ? Yes ? ? ?
systemd-boot / Gummiboot ? ? ? ? ? ?
Windows Boot Manager No No Yes No No No
XOSL ? ? ? ? ? ?
yaboot ? ? ? ? ? ?

Other features

edit
Name Advanced command Scriptable Supported architecture Supported executable Supported protocol Supported decompression Others
GRUB Legacy Yes No x86 (PC) Multiboot 1, Linux zImage, Linux bzImage and others TFTP gzip
GRUB 2 Yes Yes x86 (PC, EFI, UEFI, coreboot, OLPC), IA-64, ARM (U-Boot, UEFI), PowerPC (OpenFirmware), MIPS, SPARC (OpenFirmware) Multiboot and others[10] TFTP, HTTP[11] gzip, xz[12]
LILO No No x86 (PC) Linux zImage, Linux bzImage ? bzip2, gzip
loader (FreeBSD) Yes Yes x86 (PC, EFI, UEFI, coreboot, OLPC), ARM (U-Boot, UEFI), MIPS, PowerPC (OpenFirmware), SPARC v9 (OpenFirmware) FreeBSD ELF kernel image, Multiboot (incomplete, for Xen image only)[13] TFTP, NFS gzip, bzip2
loadlin No No x86 (PC) Linux zImage, Linux bzImage ? gzip
SYSLINUX via cmd.c32 module via lua.c32 module x86 (PC) Linux zImage, Linux bzImage,[14] Multiboot,[15] MBR image[16] TFTP gzip, bzip2, lzo, zip, lzma, ?
Yaboot No No PowerPC (Open Firmware) Linux ELF image TFTP No
RedBoot Yes yes (boot only) ARM, ColdFire, H8300, x86, Freescale/Motorola 68000, MIPS, PowerPC, SH, SPARC, SPARCLite ELF TFTP, serial (X-modem) gzip
Das U-Boot Yes Yes PowerPC, ARM, AVR32, Blackfin, ColdFire, IXP, Leon2, m68k, MicroBlaze, MIPS, NIOS, NIOS2, PXA, x86, RISC-V, StrongARM, SH2, SH3, SH4, ... EFI, ELF, U-Boot image format, Linux zImage, raw TFTP, NFS, serial (S-Record, Y-Modem, Kermit binary protocol) bzip2, gzip, lzma
Barebox Yes Yes ARM, Blackfin, NIOS2, MIPS, x86, PowerPC ELF, U-Boot image format TFTP, NFS, serial (S-Record, Y-Modem, Kermit binary protocol) bzip2, gzip, lz4, xz, lzo
NTLDR No No x86 (PC) Windows NT kernel image (PE), MBR image ? ? default bootloader on Windows NT
Windows Boot Manager No No x86 (PC), ARM (only on Windows Mobile remake) Portable Executable ? ? Successor of NTLDR; used on Vista and up.
FreeLoader (ReactOS) No No x86 (PC), ARM, PowerPC ? ? ? clone of NTLDR
Limine Yes No x86 (PC, UEFI), ARM, RISC-V, LoongArch[17][18] Multiboot 1 and 2, Limine boot protocol, Linux zImage and bzImage[19] TFTP gzip
Name Advanced command Scriptable Supported architecture Supported executable Supported protocol Supported decompression Others

Notes

edit
  1. ^ Daniel Kiper (20 December 2023). "GRUB 2.12 released". Retrieved 20 December 2023.
  2. ^ "stage2/dosstart.S". GitHub. 2014-10-12. Retrieved 2021-06-24. Since we have copied the Linux kernel code and the Linux kernel follows GPL2, so only GPL2 is adoptable and it rules here.
  3. ^ "Release 9.6.1". 16 August 2025. Retrieved 22 August 2025.
  4. ^ "Chain0 - OSx86".
  5. ^ a b Rod Smith, "Managing EFI Boot Loaders for Linux: Using gummiboot", 5 November 2012.
  6. ^ Larabel, Michael (2025-02-17). "Limine 9.0 Bootloader Drops EXT4 File-System Support". Phoronix. Retrieved 2025-02-17.
  7. ^ Schürrmann, Tim (2025-02-17). "Bootloader Limine 9.0.0 entfernt Unterstützung für Ext-Dateisysteme". Linux-Magazin. Retrieved 2025-03-07.
  8. ^ Larabel, Michael (2025-02-17). "Limine 9.0 Bootloader Drops EXT4 File-System Support". Phoronix. Retrieved 2025-02-17.
  9. ^ Schürrmann, Tim (2025-02-17). "Bootloader Limine 9.0.0 entfernt Unterstützung für Ext-Dateisysteme". Linux-Magazin. Retrieved 2025-03-07.
  10. ^ "GNU GRUB Manual 2.06: Supported kernels". GNU. Free Software Foundation, Inc. Retrieved 2021-06-24.
  11. ^ "GNU GRUB Manual 2.06: Device syntax". GNU. Free Software Foundation, Inc. Retrieved 2021-06-24. If you enabled the network support, the special drives (protocol[,server]) are also available. Supported protocols are 'http' and 'tftp'.
  12. ^ "GNU GRUB Manual 2.02: Features".
  13. ^ WHR. "An experiment to make a Multiboot-compliant kFreeBSD i386 image". SourceForge. Rivoreo. Retrieved 2021-06-24. Since 10.3-RELEASE, the BTX loader included in distribution supports Multiboot, but only for Xen (the Xen image is a Multiboot-compliant kernel). ... Because this multiboot support in BTX loader is designed for Xen only, it requires the first Multiboot module be original kFreeBSD image. Trying to load a Multiboot kernel without loading any Multiboot modules would resulted in BTX loader complaining 'No FreeBSD kernel provided, aborting'.
  14. ^ "Can SYSLINUX Handle Large Kernels?". Syslinux Wiki. Retrieved 2021-06-24.
  15. ^ "Mboot.c32 - Syslinux Wiki". www.syslinux.org. Retrieved 2018-10-12.
  16. ^ "Comboot/chain.c32". Syslinux Wiki. Retrieved 2021-06-24.
  17. ^ Larabel, Michael (2024-08-03). "Limine 8.0 Bootloader Released With LoongArch Support". Phoronix. Retrieved 2025-02-09.
  18. ^ Schürrmann, Tim (2024-08-06). "Alternativer Bootloader Limine 8.0.1 unterstützt LoongArch64-Systeme". Linux-Magazin. Retrieved 2025-03-07.
  19. ^ Holwerda, Thom (2024-08-04). "Limine: a modern, advanced, portable, multiprotocol bootloader and boot manager". OSNews. Retrieved 2025-03-07.