Limine

From OSDev.wiki
Revision as of 20:26, 31 May 2022 by osdev>Nbtx (Undo revision 27108 by Stivalisti0italiani (talk))
Jump to navigation Jump to search

Limine is an advanced multiprotocol x86/x86_64 BIOS and UEFI bootloader, with support for the Linux, The Limine boot protocol, multiboot1 and 2, and stivale1 and 2 boot protocols (and serving as the reference implementation for these last two).

History

Limine was created as the reference implementation for the stivale boot protocols. The protocols were conceived as a response to the shortcomings of Multiboot. As of Limine 3.0, a new boot protocol, simply called the Limine boot protocol was introduced to supersede stivale 1 and 2.

It originally only supported BIOS and the stivale1 protocol, but it was later expanded to also support UEFI and the Linux and multiboot protocols.

Supported protocols and filesystems

As mentioned above, Limine supports the Limine and stivale boot protocols, alongside Linux's own boot protocol (which means one can boot Linux fully using Limine), multiboot 1 and 2 (allowing it to boot a vast catalogue of hobby OSes and more), and chainloading to allow to undirectly boot unsupported operating systems such as Microsoft Windows.

It supports the FAT12/16/32, ext2, ext3, ext4, NTFS, and ISO 9660 (used by optical media and hybrid ISO images) filesystems alongside the lesser known echfs file system.

How to use Limine with your kernel

The Limine Bare Bones article contains a basic tutorial on how to use Limine and its protocol. Furthermore, a GitHub repository containing a simple example template for a 64-bit kernel loaded using Limine can be found in the external links section.

See Also

Articles

External Links