Jump to content

Multiboot specification

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Artoria2e5 (talk | contribs) at 03:16, 7 April 2019. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The Multiboot Specification is an open standard describing how a boot loader can load an x86 operating system kernel.[1][2] The specification allows any compliant boot loader implementation to boot any compliant operating system kernel. Thus, it allows different operating systems and boot loaders to work together and interoperate, without the need for operating system–specific boot loaders. As a result, it also allows easier coexistence of different operating systems on a single computer, which is also known as multi-booting.

The specification was originally created in 1995 and developed by the Free Software Foundation. GNU Hurd, VMware ESXi, Xen, and L4 microkernels all need to be booted using this method. GNU GRUB is the reference implementation used in the GNU operating system and other operating systems.[3]  As of January 2015, the latest version of Multiboot Specification is 0.6.96, defined in 2009.[2] An incompatible second iteration with UEFI support, Multiboot2 specification, was later introduced. As of April 2019, the lastest version of Multiboot2 is 2.0, defined in 2016.[4]

Software known to be compliant with the Multiboot Specification[5][unreliable source?] includes AROS Research Operating System, OpenBIOS,[a] CapROS, freeldr (bootloader of ReactOS[a]), GNU Hurd, GRUB 2,[a] MirBSD bootloader,[a] MINIX 3,[6] NetBSD,[1] illumos, SkyOS, Syllable, and Xen.

Technical overview

Both Multiboot and Multiboot2 requires the OS kernel being booted to present a header somewhere in the earlier parts of the file to tell the bootloader some essential information.[2][4]

See also

Notes

  1. ^ a b c d This bootloader is itself compliant with Multiboot specification, and it may be used to load non-compatible operating systems.

References

  1. ^ a b Merino Vidal, Julio M. (March 1, 2007), "Making NetBSD Multiboot-Compatible", ONLamp.com, O'Reilly Media, retrieved October 2, 2012.
  2. ^ a b c Ford, Bryan; Boleyn, Erich Stefan; FSF (2009). "Multiboot specification" (0.6.96 ed.). GNU. Retrieved 2013-10-11.
  3. ^ "Booting with GRUB". OSDEV. June 25, 2006. Archived from the original on December 28, 2008.
  4. ^ a b "Multiboot2 Specification version 2.0". www.gnu.org. Retrieved 7 April 2019.
  5. ^ Okuji, Yoshinori K., Operating systems that support Multiboot, GrubWiki, archived from the original on August 19, 2010
  6. ^ "From power-on to the login prompt", wiki.minix3.org, retrieved December 1, 2014.