Limine: Difference between revisions

Limine 6.x no longer supports ext2/3/4
[unchecked revision][unchecked revision]
(Limine 6.x no longer supports ext2/3/4)
 
(19 intermediate revisions by 9 users not shown)
Line 1:
'''Limine''' is an advanced, portable, multiprotocol bootloader, with support for Linux, the [[Limine Bare Bones|native Limine boot protocol]], and [[Multiboot|multiboot1 and 2]].
{{In Progress}}
 
'''Limine''' is a modern, advanced bootloader with support for cutting edge features such as 5-level paging, 64-bit [[Long Mode]], and direct higher half loading thanks to the [[stivale]] boot protocol.
 
== History ==
 
Limine was created as the reference implementation for the [['''stivale]]''' boot protocolprotocols. The protocolprotocols waswere conceived as a response to the shortcomings of [[Multiboot]]. As of Limine 3.x, a new boot protocol, simply called the [[Limine Bare Bones|Limine boot protocol]] was introduced to supersede stivale 1 and 2. As of Limine 4.x, support for the legacy stivale protocols has been dropped.
 
It originally only supported x86 [[BIOS]] and the stivale1 protocol, but it was later expanded to also support [[UEFI]], the Linux and [[multiboot]] protocols, and other architectures such as aarch64.
 
== Supported protocols and filesystems ==
 
As mentioned above, Limine supports the [[stivaleLimine Bare Bones|Limine]] boot protocol, 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 bootingto unsupportedindirectly thirdboot partyunsupported operating systems such as Microsoft Windows.
 
It supports the [[FAT|FAT32FAT12/16/32]], and [[ext2]],ISO [[ext39660]], and(used [[ext4]]by filesystemsoptical alongsidemedia theand lesserhybrid knownISO [[echfs]]images) file systemfilesystems.
 
== Supported Architectures ==
Currently Limine supports [[X86]], [[X86-64]], aarch64 (64 bit [[ARM]]), and riscv64 (64 bit [[RISC-V]]). X86 system support is targeted for Pentium Pro (i686) class machines as the minimum.
 
== How to use Limine with your kernel ==
 
AThe [[Limine Bare Bones]] article contains a basic tutorial on how to use Limine and its protocol. Furthermore, a GitHub repository containing a simple example oftemplate for a 64-bit kernel loaded withusing Limine can be found in the external links section.
 
== See Also ==
 
=== Articles ===
 
* [[Limine Bare Bones]]
 
== External Links ==
*[https://github.com/limine-bootloader/limine/blob/unstable/STIVALE.md-barebones StivaleBarebones bootkernel protocoltemplate using Limine.]
*[https://github.com/limine-bootloader/limine/blob/unstable/STIVALE2.md Stivale2 boot protocol.]
*[https://github.com/limine-bootloader/limine Limine source code on GitHub.]
*[https://github.com/osdevlimine-wikibootloader/limine-barebones/blob/trunk/PROTOCOL.md BarebonesLimine exampleboot withprotocol liminespecification.]
*[https://github.com/TomatOrgstivale/TomatBootstivale/blob/master/STIVALE.md TomatBoot]stivale (UEFIboot implementationprotocol of slative)specification.]
*[https://github.com/limine-bootloaderstivale/liminestivale/blob/unstablemaster/STIVALE2.md Stivale2stivale2 boot protocol specification.]
 
[[Category:Bootloaders]]
Anonymous user