For system software development kits, the strongest matches are babbleberry/rpi4-osdev (This repository provides a bare-metal operating system development guide), armbian/build (This repository provides a build system and framework for) and phil-opp/blog_os (This repository provides a freestanding x86 kernel implementation written). chyyuu/os_kernel_lab and reactos/reactos round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Hand-picked system software development kits for low-level programming, ranked by GitHub stars and activity. Compare and pick the right one.
rpi4-osdev is a project for bare metal operating system development targeting the Raspberry Pi 4. It focuses on creating a custom operating system that runs directly on the hardware without an underlying kernel or abstraction layer. The project provides a codebase and instructional guide for developing a low-level system from scratch. This process involves transitioning from early boot code to kernel execution on the ARM64 architecture. The technical scope covers embedded system bootstrapping and low-level hardware interfacing. This includes managing memory-mapped I/O, physical address mappi
This repository provides a bare-metal operating system development guide and codebase targeting the Raspberry Pi 4, delivering low-level hardware access, boot support, and kernel integration for ARM64.
This repository is the Armbian build framework — an embedded Linux build system for generating custom operating system images tailored to single-board computers, primarily targeting ARM and RISC-V architectures. The build process is orchestrated by GNU Makefiles and relies on a chroot-based environment to assemble the root filesystem, manage cross-compilation toolchains, and aggregate binary firmware blobs for hardware compatibility. Kernel and bootloader source trees are fetched via git, with structured patches applied in a controlled sequence, while each supported board is described by a ded
This repository provides a build system and framework for assembling custom embedded Linux operating system images, complete with cross-compilation toolchains and kernel integration, aligning well with low-level system development needs.
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
This repository provides a freestanding x86 kernel implementation written in Rust with bare-metal capabilities and custom memory management, making it a relevant educational and practical tool for low-level system development.
This project is an educational framework and toolkit designed for developing and testing operating system kernels. It provides a structured environment for implementing fundamental system primitives, including virtual memory management, preemptive process scheduling, and filesystem organization, using Rust and C. The framework is specifically oriented toward RISC-V and x86 architectures, serving as a laboratory for learning how to build core system software from the ground up. The project distinguishes itself by supporting both bare-metal deployment and hardware emulation, allowing developers
This educational kernel framework provides low-level hardware access and bare-metal support for developing operating systems in Rust and C, though it functions more as a learning laboratory than a general-purpose production toolchain.
ReactOS is an open-source operating system designed to be binary compatible with Windows applications and drivers. It consists of a low-level system kernel that manages hardware resources and a binary compatibility layer that enables the execution of software designed for the Windows binary interface. The project implements a cross-platform build system and toolchain for compiling and deploying bootable operating system images across different hardware architectures. This includes the use of cross-compilation toolchains and a hardware-abstraction layer to support various processor and motherb
ReactOS is a complete open-source operating system providing a low-level kernel, hardware abstraction layer, and cross-compilation toolchains suited for low-level system development, though it targets a Windows-compatible OS environment rather than general-purpose SDKs.
OpenCorePkg is a modular UEFI bootloader designed to initialize hardware and facilitate the loading of modern operating systems on non-standard or unsupported hardware. It functions as a comprehensive firmware emulation environment, providing the necessary runtime services and memory management to bridge the gap between diverse hardware configurations and operating system requirements. The project distinguishes itself through its ability to perform runtime kernel patching and system firmware modification, allowing for the injection of drivers and the manipulation of hardware tables during the
OpenCorePkg is a low-level UEFI bootloader and firmware emulation environment providing hardware initialization and kernel integration, making it a fitting system-level toolkit despite its specific focus on boot and firmware tasks.
The Linux kernel is a monolithic operating system core that manages hardware resources, memory, and process scheduling across diverse computing architectures. It provides a standardized, POSIX-compliant environment for application execution while maintaining a modular driver framework that allows for the dynamic loading and removal of hardware interfaces. The project is distinguished by its high-performance concurrency toolkit, which utilizes lockless synchronization primitives and read-copy-update mechanisms to manage shared data access in multi-core environments. It incorporates a comprehen
The Linux kernel provides low-level hardware access and system-level libraries for operating system development, though as a complete kernel rather than a standalone SDK or toolchain it fits the category slightly differently than a traditional developer kit.