awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to rust-embedded/rust-raspi3-os-tutorials

Open-source alternatives to Rust Raspi3 OS Tutorials

30 open-source projects similar to rust-embedded/rust-raspi3-os-tutorials, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Rust Raspi3 OS Tutorials alternative.

  • s-matyukevich/raspberry-pi-oss-matyukevich avatar

    s-matyukevich/raspberry-pi-os

    13,854View on GitHub↗

    This project is a bare-metal operating system developed for ARM64 architecture. It serves as a low-level implementation of kernel engineering, focusing on the fundamental construction of an OS from the hardware level up. The system is distinguished by its comprehensive approach to ARM64 processor control, featuring a red-black tree task scheduler and a hierarchical page table system for virtual memory management. It implements a sophisticated privilege model that handles transitions between kernel and user modes, ensuring process isolation through address space splitting and exception level m

    Carmarmv8assembler
    View on GitHub↗13,854
  • babbleberry/rpi4-osdevbabbleberry avatar

    babbleberry/rpi4-osdev

    3,757View on GitHub↗

    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

    C
    View on GitHub↗3,757
  • cirosantilli/x86-bare-metal-examplescirosantilli avatar

    cirosantilli/x86-bare-metal-examples

    5,306View on GitHub↗

    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.

    Assemblyassemblybare-metalbaremetal
    View on GitHub↗5,306

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • mit-pdos/xv6-publicmit-pdos avatar

    mit-pdos/xv6-public

    9,466View on GitHub↗

    xv6 is a Unix-like educational operating system designed for teaching kernel concepts. It is implemented as an instructional kernel for x86 and RISC-V architectures, featuring a virtual memory manager and support for symmetric multiprocessing. The system is designed to demonstrate core OS principles through a simplified re-implementation of Unix Version 6. It provides a controlled environment for studying system calls, trap handling, and process lifecycles. Its capability surface covers process management, including scheduling and context switching, and memory management via page tables for

    C
    View on GitHub↗9,466
  • sypstraw/rpi4-osdevsypstraw avatar

    sypstraw/rpi4-osdev

    3,754View on GitHub↗

    This project is a tutorial for developing a custom bare metal operating system specifically for the Raspberry Pi 4. It provides the guidance and resources necessary to write software that interacts directly with hardware without the use of a pre-existing kernel. The project centers on an ARM64 cross-compilation toolchain and a build pipeline that transforms source code into raw binary images. It utilizes linker scripts to define physical memory addresses and section placements, ensuring the resulting binary loads at the correct hardware entry point. The codebase covers direct hardware interf

    C
    View on GitHub↗3,754
  • riscv-collab/riscv-gnu-toolchainriscv-collab avatar

    riscv-collab/riscv-gnu-toolchain

    4,540View on GitHub↗

    This project is a cross-compiler toolchain for RISC-V software development. It provides the necessary components to compile C and C++ source code into executable binaries and libraries specifically for the RISC-V hardware architecture. The toolchain supports multi-architecture binary generation and multilib capabilities, allowing a single installation to target various instruction set specifications and bit-widths. It integrates with alternative compilers such as LLVM and Clang and includes a bootstrapped build pipeline to produce high-performance versions of the tools. The system covers bro

    C
    View on GitHub↗4,540
  • nuta/operating-system-in-1000-linesnuta avatar

    nuta/operating-system-in-1000-lines

    3,258View on GitHub↗

    This project is an educational operating system kernel designed to demonstrate the fundamental architectural principles of memory paging and process management. It is implemented as a minimal kernel that serves as a practical reference for building a functioning system from the ground up. The implementation features a preemptive multitasking kernel that switches execution contexts between threads to share a single CPU. It includes an x86 virtual memory manager that uses paging to map virtual addresses to physical memory and isolate processes. The system covers low-level hardware interfacing

    C
    View on GitHub↗3,258
  • gurugio/lowlevelprogramming-universitygurugio avatar

    gurugio/lowlevelprogramming-university

    12,555View on GitHub↗

    This project is a comprehensive educational framework designed to guide learners through the complexities of systems engineering and low-level software development. It provides structured learning paths that integrate hardware simulation, source code analysis, and project-based exercises to help developers master the foundational concepts of computer architecture, operating systems, and firmware design. The curriculum distinguishes itself by emphasizing direct interaction with system internals, requiring learners to examine and modify existing open-source kernel and driver implementations. By

    arduinoassemblyassembly-language-programming
    View on GitHub↗12,555
  • flipperdevices/flipperzero-firmwareflipperdevices avatar

    flipperdevices/flipperzero-firmware

    15,563View on GitHub↗

    This project provides an open-source firmware platform and complete build environment for portable multi-tool hardware. It functions as an embedded operating system designed to manage radio, infrared, and physical interface components, enabling users to develop custom applications and system logic for specialized hardware devices. The firmware distinguishes itself through a modular architecture that organizes system functionality into isolated units, allowing for the development of custom user interfaces and logic. It includes a comprehensive collection of low-level drivers and applications s

    Carmv7mblefirmware
    View on GitHub↗15,563
  • redox-os/redoxredox-os avatar

    redox-os/redox

    16,054View on GitHub↗

    Redox is a POSIX-compliant, microkernel-based operating system written entirely in Rust. By utilizing a memory-safe language for the kernel and all system components, the project eliminates common vulnerabilities such as buffer overflows and use-after-free errors. Its architecture relies on a minimal kernel that manages only essential hardware and process isolation, delegating all other system services to unprivileged user-space processes. The system distinguishes itself through a modular design where hardware drivers and system services run as independent user-space daemons, allowing them to

    Rustbsdfreebsdgnu
    View on GitHub↗16,054
  • phil-opp/blog_osphil-opp avatar

    phil-opp/blog_os

    17,518View on GitHub↗

    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

    HTMLkerneloperating-systemrust
    View on GitHub↗17,518
  • chyyuu/os_kernel_labchyyuu avatar

    chyyuu/os_kernel_lab

    4,045View on GitHub↗

    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

    Rustkernellabos
    View on GitHub↗4,045
  • plctlab/riscv-operating-system-moocplctlab avatar

    plctlab/riscv-operating-system-mooc

    1,124View on GitHub↗

    This project provides an educational framework and laboratory environment for learning operating system kernel development specifically for the RISC-V architecture. It serves as a structured course that guides users through the process of building a functional kernel from scratch, offering the necessary resources to understand low-level system programming and architecture-specific software implementation. The toolkit distinguishes itself by integrating a complete development environment that bridges the gap between source code and hardware execution. It includes automated build scripts for cr

    C
    View on GitHub↗1,124
  • zeroclaw-labs/zeroclawzeroclaw-labs avatar

    zeroclaw-labs/zeroclaw

    31,920View on GitHub↗

    Zeroclaw is a modular framework for building and deploying autonomous agents that integrate AI models, messaging platforms, and hardware interfaces. It functions as a multi-agent orchestrator and embedded systems controller, providing a unified runtime for managing agent lifecycles, memory, and security policies across diverse environments. The system distinguishes itself through its focus on secure, verifiable hardware and software orchestration. It enforces strict security boundaries, including command allowlisting, resource throttling, and interactive human-in-the-loop approval for sensiti

    Rust
    View on GitHub↗31,920
  • freebsd/freebsd-srcfreebsd avatar

    freebsd/freebsd-src

    9,162View on GitHub↗

    This repository contains the complete source code for a Unix-like operating system, including the monolithic kernel and base system utilities. It provides a BSD-derived system core and a full build toolchain required to compile a functional operating system for servers, desktops, or embedded devices. The system features a Linux binary compatibility layer that enables the execution and emulation of Linux binaries on a non-Linux platform. It also includes a modular kernel configuration process to tailor hardware support and system features during compilation. The project covers broad system ca

    C
    View on GitHub↗9,162
  • rust-embedded/rust-raspberrypi-os-tutorialsrust-embedded avatar

    rust-embedded/rust-raspberrypi-OS-tutorials

    14,682View on GitHub↗

    This project is an educational resource for developing bare-metal operating systems and kernels from scratch on Raspberry Pi hardware. It provides a structured guide to systems programming using the Rust language, focusing on the implementation of core kernel components that execute directly on ARM-based hardware without the support of an underlying operating system or standard library. The tutorials emphasize a modular architecture that separates hardware-independent kernel logic from processor-specific and board-specific configurations. By utilizing a hardware abstraction layer and distinct

    Rustaarch64arm64armv8
    View on GitHub↗14,682
  • tuhdo/os01tuhdo avatar

    tuhdo/os01

    13,426View on GitHub↗

    This project is an educational resource and technical reference for building operating systems from scratch. It provides a comprehensive guide to mastering x86 architecture and implementing core kernel components by writing code that executes directly on hardware without the support of standard libraries or operating system abstractions. The materials focus on low-level systems engineering, teaching users how to interpret technical datasheets to manage hardware resources. It covers the fundamental mechanics of bare-metal programming, including the use of assembly language to define execution

    TeXbookoperating-system
    View on GitHub↗13,426
  • coolsnowwolf/ledecoolsnowwolf avatar

    coolsnowwolf/lede

    31,479View on GitHub↗

    Lede is an embedded Linux build tool and firmware build system designed to generate bootable operating system images for routers and embedded network devices. It functions as a network device OS compiler that manages toolchains and target architectures to produce customizable firmware. The system enables the creation of custom router operating systems by integrating external package feeds from remote Git repositories. This allows for the expansion of available software packages and the tailoring of network appliance features during the build process. The build environment covers toolchain-ba

    Cledeluaopenwrt-feed
    View on GitHub↗31,479
  • mit-pdos/xv6-riscvmit-pdos avatar

    mit-pdos/xv6-riscv

    9,934View on GitHub↗

    xv6-riscv is a simplified Unix-like teaching operating system designed for the study of kernel design and hardware interaction. It provides a low-level RISC-V kernel implementation that serves as a bootable system image for execution and debugging within a virtual machine or emulator. The project focuses on educational instruction regarding the RISC-V architecture. It enables the study of operating system concepts through a minimal kernel that implements process management and memory handling. The system covers core kernel operations including multiprocessor resource management and the imple

    C
    View on GitHub↗9,934
  • torvalds/linuxtorvalds avatar

    torvalds/linux

    237,355View on GitHub↗

    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

    C
    View on GitHub↗237,355
  • hackclub/putting-the-you-in-cpuhackclub avatar

    hackclub/putting-the-you-in-cpu

    5,499View on GitHub↗

    This project is a collection of technical documentation and guides designed as a computer architecture explainer. It provides educational resources on how processors and operating systems execute programs, focusing on the fetch-execute cycle and the fundamental relationship between hardware and the kernel. The documentation covers a wide range of low-level system operations, including detailed guides on the executable and linkable binary format, virtual memory management, and kernel-level operations. It specifically explores the mechanics of CPU scheduling, preemptive multitasking, and the us

    MDXcpuelflinux
    View on GitHub↗5,499
  • hybridgroup/gobothybridgroup avatar

    hybridgroup/gobot

    9,425View on GitHub↗

    Gobot is a robotics framework for the Go programming language designed for developing robotics, drones, and IoT applications. It provides a hardware abstraction layer with standardized drivers to interact with GPIO, I2C, SPI, and PWM interfaces across various single-board computers and microcontrollers. The framework functions as an IoT device orchestrator and BLE device manager, enabling the coordination of multiple sensors, actuators, and Bluetooth Low Energy peripherals. It includes specialized interfaces for drone control, allowing for the management of flight maneuvers and video streams

    Goarduinobeaglebonebeaglebone-black
    View on GitHub↗9,425
  • raspberrypi/linuxraspberrypi avatar

    raspberrypi/linux

    12,543View on GitHub↗

    This project is a monolithic operating system kernel designed to serve as the foundational software layer for diverse computing architectures and embedded platforms. It manages core system services, including processor scheduling, memory allocation, and hardware resource distribution, to facilitate communication between user applications and physical hardware. The kernel utilizes a hardware abstraction layer and platform-specific device trees to ensure consistent operation across a wide variety of processors and specialized computing devices. It supports dynamic functionality through loadable

    C
    View on GitHub↗12,543
  • zeal-operating-system/zealosZeal-Operating-System avatar

    Zeal-Operating-System/ZealOS

    2,322View on GitHub↗

    ZealOS is a 64-bit operating system designed for bare-metal deployment and custom kernel development. It provides a self-contained environment that operates within a single-address-space memory model, where all software executes in a ring-zero privilege level to eliminate context switching and facilitate direct hardware interaction. The system distinguishes itself through a monolithic architecture that integrates just-in-time compilation, allowing source code to be translated into machine instructions during runtime. It bypasses traditional abstraction layers by utilizing direct hardware memo

    HolyCholycoperating-systempublic-domain
    View on GitHub↗2,322
  • open-smartwatch/open-smartwatch-osOpen-Smartwatch avatar

    Open-Smartwatch/open-smartwatch-os

    1,114View on GitHub↗

    Open-smartwatch-os is an operating system designed for resource-constrained wearable devices. It provides a development and testing environment that allows developers to build, validate, and debug firmware for smartwatches within a simulated desktop environment before deploying to physical hardware. The project distinguishes itself through a comprehensive suite of tools for hardware emulation and remote diagnostics. By utilizing a hardware abstraction layer and modular driver architecture, it decouples core system logic from specific physical components. This enables developers to run the ope

    C
    View on GitHub↗1,114
  • dolphin-emu/dolphindolphin-emu avatar

    dolphin-emu/dolphin

    14,644View on GitHub↗

    Dolphin is a software environment that simulates GameCube and Wii console hardware, allowing users to execute game discs and digital software on modern computing platforms. It functions by translating original console processor instructions into native host machine code at runtime and intercepting low-level graphics commands to render them through modern graphics APIs. The project distinguishes itself through a comprehensive netplay engine that enables online multiplayer for local games by synchronizing game states and input timing across remote instances. This system enforces deterministic e

    C++cppemulationemulator
    View on GitHub↗14,644
  • nodemcu/nodemcu-firmwarenodemcu avatar

    nodemcu/nodemcu-firmware

    7,926View on GitHub↗

    This project is a Lua-based firmware environment for the ESP8266 WiFi chip, providing an embedded Lua interpreter and a development framework for WiFi SoC hardware. It functions as a C-based wrapper around the Espressif non-OS SDK, enabling the execution of asynchronous scripts to manage wireless communication and hardware peripherals. The environment integrates a SPIFFS flash filesystem for storing persistent scripts and data directly on non-volatile memory. To optimize limited hardware resources, the system utilizes execute-in-place flash execution, running read-only constants and instructi

    C
    View on GitHub↗7,926
  • platformio/platformioplatformio avatar

    platformio/platformio

    9,299View on GitHub↗

    PlatformIO is an embedded development platform and cross-platform build system for writing, compiling, and uploading firmware to various microcontroller architectures. It provides a unified environment for managing embedded software development across different hardware platforms. The project functions as an embedded library manager through a centralized registry for discovering and integrating third-party drivers and libraries. It also serves as a firmware debugging tool and an embedded unit testing framework, allowing for real-time hardware inspection and the execution of test suites direct

    Python
    View on GitHub↗9,299
  • pervognsen/bitwisepervognsen avatar

    pervognsen/bitwise

    5,250View on GitHub↗

    Bitwise is a computer architecture education kit and a comprehensive set of guides for building a custom CPU, operating system, and compiler from scratch. It serves as a CPU design tutorial and a practical framework for implementing a unique instruction set architecture. The project provides a custom instruction set architecture toolchain, including resources for creating a matching assembler and compiler. It further includes a hardware development guide for synthesizing computer components and peripheral controllers for deployment on programmable logic devices and FPGAs. The kit covers full

    C
    View on GitHub↗5,250
  • raspberrypi/rpi-imagerraspberrypi avatar

    raspberrypi/rpi-imager

    2,510View on GitHub↗

    Raspberry Pi Imager is a graphical utility designed to download and write operating system images directly to SD cards and USB drives. It serves as a deployment tool for preparing bootable storage media for single-board computers, facilitating the automated installation and initial configuration of embedded systems. The application distinguishes itself by enabling on-the-fly image customization, which allows users to inject network settings and user credentials directly into the image during the writing process. It supports custom image sources and remote repository manifests, providing flexi

    C++raspberry-piraspberry-pi-1raspberry-pi-2
    View on GitHub↗2,510