Limine: Difference between revisions

Limine 6.x no longer supports ext2/3/4
[unchecked revision][unchecked revision]
m (Update links)
(Limine 6.x no longer supports ext2/3/4)
 
(15 intermediate revisions by 8 users not shown)
Line 1:
'''Limine''' is aan modernadvanced, advancedportable, multiprotocol bootloader, with support for cuttingLinux, edgethe features[[Limine suchBare asBones|native 5-levelLimine paging,boot 64-bit [[Long Modeprotocol]], and direct[[Multiboot|multiboot1 higherand half loading thanks to the [[stivale2]] boot protocol.
 
== 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.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.
It does not support UEFI by design, but stivale is a firmware agnostic protocol and there exist UEFI implementations such as [https://github.com/TomatOrg/TomatBoot TomatBoot].
 
== 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 ==
 
The [[stivaleLimine Bare Bones]] article contains a basic tutorial on how to use Limine and the stivaleits 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 ==
Line 21 ⟶ 24:
=== Articles ===
 
* [[stivaleLimine Bare Bones]]
 
== External Links ==
*[https://github.com/limine-bootloader/limine-barebones Barebones examplekernel withtemplate using Limine.]
*[https://github.com/limine-bootloader/limine Limine source code on GitHub.]
*[https://github.com/limine-bootloader/limine/blob/trunk/PROTOCOL.md Limine boot protocol specification.]
*[https://github.com/stivale/stivale/blob/master/STIVALE.md stivale boot protocol specification.]
*[https://github.com/stivale/stivale/blob/master/STIVALE2.md stivale2 boot protocol specification.]
*[https://github.com/limine-bootloader/limine-barebones Barebones example with Limine.]
*[https://github.com/TomatOrg/TomatBoot TomatBoot] (UEFI implementation of stivale)
 
[[Category:Bootloaders]]
Anonymous user