awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
rust-embedded avatar

rust-embedded/rust-raspi3-OS-tutorials

0
View on GitHub↗
14,682 estrellas·873 forks·Rust·Apache-2.0·6 vistas

Rust Raspi3 OS Tutorials

This project is a tutorial and framework for building a low-level, bare-metal operating system from scratch using the Rust language. It focuses on ARMv8 kernel development specifically for the Raspberry Pi 3, providing the resources necessary to implement a monolithic kernel that runs directly on hardware without an underlying operating system.

The project distinguishes itself by providing a complete embedded cross-compilation suite within a containerized environment to ensure consistent builds. It includes a dedicated kernel deployer that uses a serial interface and chainloader to load and boot kernel images onto physical hardware via UART.

The framework covers core system capabilities including virtual memory mapping and configuration for resource isolation, hardware exception handling for system stability, and the implementation of serial drivers for console output. It also supports hardware simulation through emulators and on-chip debugging to verify kernel logic before physical deployment.

Features

  • Monolithic Kernels - Implements a monolithic kernel where all core OS services and drivers run in privileged mode.
  • Tutorials - Ships as a comprehensive guide for building a low-level operating system from scratch using Rust.
  • Embedded Hardware Cross-Compilation - Implements a toolchain for targeting ARMv8 architecture on the Raspberry Pi 3 from a host machine.
  • Serial Port Interfaces - Provides a low-level driver that communicates directly with SoC serial port registers for system logging.
  • Hardware Exception Handlers - Implements kernel-level exception handling using a vector table to manage system stability and hardware events.
  • Physical Address Mapping - Implements virtual-to-physical address translation using page tables for system resource isolation.
  • Embedded Operating Systems - Provides a framework for creating a modular, low-level kernel with integrated memory management and hardware drivers.
  • Operating System Development - Provides a framework for building a low-level operating system kernel from scratch using Rust.
  • Raspberry Pi Systems Programming - Focuses on writing custom kernel code specifically for the Raspberry Pi 3 hardware architecture.
  • Bare Metal Development - Provides resources for troubleshooting code running directly on hardware using serial consoles and on-chip debuggers.
  • Virtual Memory Management - Implements virtual memory mapping and translation to isolate system resources and processes.
  • Kernel Deployment Tools - Provides a dedicated deployer for loading compiled kernels onto physical devices on demand via UART.
  • Binary Emulators - Supports running kernel binaries in a software-simulated environment to verify logic before physical deployment.
  • Hardware Interfacing and Drivers - Implements a driver for direct communication between the kernel and the SoC serial port for system output.
  • Kernel Construction - Provides the process and resources for assembling standalone binaries that execute directly on hardware.
  • Kernel Deployment Tools - Includes a dedicated deployer that uses a serial interface and chainloader to boot kernel images on physical hardware.
  • Kernel Loading Mechanisms - Provides a mechanism to transfer compiled kernel images from a host to a target device via UART.
  • Hardware Emulators - Uses software emulation to verify kernel functionality on a host system without physical hardware.
  • System Emulators - Enables testing of kernel functionality via system emulation before deploying to physical hardware.
  • Hardware Debugging Interfaces - Integrates with on-chip debuggers to inspect the state of the running kernel on physical hardware.
  • Bootstrapping Chainloaders - Includes a chainloader that allows executing custom kernel images over a serial connection.
  • Learning Resources - Guided tutorials for building a monolithic OS kernel.

Historial de estrellas

Gráfico del historial de estrellas de rust-embedded/rust-raspi3-os-tutorialsGráfico del historial de estrellas de rust-embedded/rust-raspi3-os-tutorials

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Rust Raspi3 OS Tutorials

Proyectos open-source similares, clasificados según cuántas características comparten con Rust Raspi3 OS Tutorials.
  • s-matyukevich/raspberry-pi-osAvatar de s-matyukevich

    s-matyukevich/raspberry-pi-os

    13,854Ver en 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
    Ver en GitHub↗13,854
  • babbleberry/rpi4-osdevAvatar de babbleberry

    babbleberry/rpi4-osdev

    3,757Ver en 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
    Ver en GitHub↗3,757
  • cirosantilli/x86-bare-metal-examplesAvatar de cirosantilli

    cirosantilli/x86-bare-metal-examples

    5,306Ver en 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
    Ver en GitHub↗5,306
  • mit-pdos/xv6-publicAvatar de mit-pdos

    mit-pdos/xv6-public

    9,466Ver en 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
    Ver en GitHub↗9,466
Ver las 30 alternativas a Rust Raspi3 OS Tutorials→

Preguntas frecuentes

¿Qué hace rust-embedded/rust-raspi3-os-tutorials?

This project is a tutorial and framework for building a low-level, bare-metal operating system from scratch using the Rust language. It focuses on ARMv8 kernel development specifically for the Raspberry Pi 3, providing the resources necessary to implement a monolithic kernel that runs directly on hardware without an underlying operating system.

¿Cuáles son las características principales de rust-embedded/rust-raspi3-os-tutorials?

Las características principales de rust-embedded/rust-raspi3-os-tutorials son: Monolithic Kernels, Tutorials, Embedded Hardware Cross-Compilation, Serial Port Interfaces, Hardware Exception Handlers, Physical Address Mapping, Embedded Operating Systems, Operating System Development.

¿Qué alternativas de código abierto existen para rust-embedded/rust-raspi3-os-tutorials?

Las alternativas de código abierto para rust-embedded/rust-raspi3-os-tutorials incluyen: s-matyukevich/raspberry-pi-os — This project is a bare-metal operating system developed for ARM64 architecture. It serves as a low-level… babbleberry/rpi4-osdev — rpi4-osdev is a project for bare metal operating system development targeting the Raspberry Pi 4. It focuses on… cirosantilli/x86-bare-metal-examples — This project is a collection of minimal operating systems, bootloaders, and hardware drivers used to demonstrate… mit-pdos/xv6-public — xv6 is a Unix-like educational operating system designed for teaching kernel concepts. It is implemented as an… sypstraw/rpi4-osdev — This project is a tutorial for developing a custom bare metal operating system specifically for the Raspberry Pi 4. It… riscv-collab/riscv-gnu-toolchain — This project is a cross-compiler toolchain for RISC-V software development. It provides the necessary components to…