This project is a pure-Rust bootloader and firmware loader designed for x86 operating system development. It initializes bare-metal hardware and loads compiled operating system kernels from both legacy BIOS and modern UEFI firmware environments into a running state.
rust-osdev/bootloader 的主要功能包括:Bare-Metal Runtimes, Dual Firmware Layers, Rust Bootloaders, Custom Kernel Booting, UEFI Bootloaders, Rust Development, Compile-Time Macros, Bootable Disk Image Toolchains。
rust-osdev/bootloader 的开源替代品包括: limine-bootloader/limine — Limine is a multiprotocol operating system bootloader that bridges low-level hardware initialization and system… fbelavenuto/arpl — Arpl is a bootloader manager and custom kernel loader for network attached storage devices. It provides a network boot… cirosantilli/x86-bare-metal-examples — This project is a collection of minimal operating systems, bootloaders, and hardware drivers used to demonstrate… phil-opp/blog_os — This project is a freestanding kernel written in Rust that boots on x86 hardware without a standard library. It serves… rust-embedded/embedded-hal — Embedded-hal is a hardware abstraction layer for embedded microcontrollers that defines common traits allowing… asahilinux/m1n1 — m1n1 is a low-level bootloader for ARM64-based Apple Silicon hardware. It serves as a firmware tool and…
Limine is a multiprotocol operating system bootloader that bridges low-level hardware initialization and system software across legacy BIOS and modern UEFI firmware environments. It executes directly on bare-metal hardware without an underlying operating system kernel or standard C library, parsing storage media and filesystems during the early boot sequence before OS drivers load. The software targets diverse processor architectures including x86, ARM, RISC-V, and LoongArch through discrete target binaries built from shared source code. It reads files directly from FAT and ISO9660 storage f
Arpl is a bootloader manager and custom kernel loader for network attached storage devices. It provides a network boot environment to automate the fetching, flashing, and installation of modified operating systems and kernels onto hardware storage. The project distinguishes itself through a remote management suite that exposes bootloader controls via a web browser, secure shell connection, or local terminal. It utilizes RSS feeds to automate the retrieval of the latest system images and version metadata for online updates. The system handles hardware boot configuration by mapping network int
This project is a collection of minimal operating systems, bootloaders, and hardware drivers used to demonstrate low-level x86 system programming and hardware interfacing. It serves as a kernel development toolkit and a system programming lab designed for testing architecture concepts and hardware behavior within a system emulator. The repository provides reference implementations for creating bootable disk images and loading kernel stages. It includes guides for implementing protected mode transitions, memory paging, interrupt descriptor tables, and symmetric multiprocessing on x86 hardware.
This project is a freestanding kernel written in Rust that boots on x86 hardware without a standard library. It serves as a low-level system implementation focusing on the creation of a bare metal operating system. The system implements a bootable disk image toolchain that transforms source code into binaries compatible with a bootloader. It features a custom memory allocator for dynamic memory management and an x86 kernel implementation that includes paging, interrupt handling, and VGA text mode. The project covers several core capability areas, including low-level memory management through