awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
sypstraw avatar

sypstraw/rpi4-osdev

0
View on GitHub↗
3,754 stars·279 forks·C·CC0-1.0·5 vueswww.rpi4os.com↗

Rpi4 Osdev

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 interfacing by writing to physical memory addresses and hardware registers. It also addresses embedded system booting through single-core boot sequencing and the management of processor states and memory stacks.

Features

  • Tutorials - Offers a comprehensive tutorial on developing a custom bare metal operating system for the Raspberry Pi 4.
  • Bare Metal Development - Provides a comprehensive tutorial and codebase for developing a custom bare-metal operating system from scratch.
  • Embedded Hardware Cross-Compilation - Utilizes a cross-compilation toolchain configured specifically for ARM64 embedded hardware targets.
  • Hardware Peripheral Control - Provides low-level control of system peripherals through direct physical memory address and register access.
  • Bare-Metal Runtimes - Provides a bare-metal runtime environment that executes code directly on Raspberry Pi 4 hardware without an underlying operating system.
  • Bare Metal Kernels - Provides a foundation for a custom kernel that interfaces directly with the Raspberry Pi 4 hardware.
  • Linker Script Layouts - Uses linker scripts to define the physical memory placement of code and data sections for correct boot sequence execution.
  • Linker Script Memory Layouts - Defines the mapping of object files to physical memory addresses using linker scripts.
  • Raspberry Pi Systems Programming - Focuses specifically on low-level systems programming and hardware interfacing for the Raspberry Pi 4 architecture.
  • Hardware Register Accessors - Enables direct interaction with hardware registers to control system peripherals and processor states.
  • Register-Level Controllers - Provides register-level control for high-precision manipulation of hardware peripherals via memory-mapped addresses.
  • Bootloader Binary Images - Implements a pipeline to transform compiled object files into raw binary images compatible with the Raspberry Pi 4 bootloader.
  • Build Systems - Implements a build system to transform source code into raw binary images via linker scripts for target hardware.
  • Embedded Boot Sequences - Defines memory addresses and linker scripts to ensure the Raspberry Pi 4 executes code correctly from the entry point.
  • Boot Sequencing Control - Implements single-core boot sequencing to prevent race conditions during the initial hardware startup phase.
  • Cross-Compilation Toolchains - Implements a build pipeline for generating binaries for target hardware from a different host system.
  • System Boot Initializers - Includes routines to initialize the processor and prepare memory stacks to establish a known functional state.
  • Cross Compilation Toolchains - Utilizes a set of host-based compilers and build tools specifically for targeting ARM64 processor architectures.
  • Binary Cross-Compilation - Transforms low-level source code into executable binaries for a different target architecture using a cross-compiler.

Historique des stars

Graphique de l'historique des stars pour sypstraw/rpi4-osdevGraphique de l'historique des stars pour sypstraw/rpi4-osdev

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Questions fréquentes

Que fait sypstraw/rpi4-osdev ?

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.

Quelles sont les fonctionnalités principales de sypstraw/rpi4-osdev ?

Les fonctionnalités principales de sypstraw/rpi4-osdev sont : Tutorials, Bare Metal Development, Embedded Hardware Cross-Compilation, Hardware Peripheral Control, Bare-Metal Runtimes, Bare Metal Kernels, Linker Script Layouts, Linker Script Memory Layouts.

Quelles sont les alternatives open-source à sypstraw/rpi4-osdev ?

Les alternatives open-source à sypstraw/rpi4-osdev incluent : cpq/bare-metal-programming-guide — This project provides educational resources and technical guides for microcontroller firmware development. It focuses… babbleberry/rpi4-osdev — rpi4-osdev is a project for bare metal operating system development targeting the Raspberry Pi 4. It focuses on… rust-embedded/rust-raspberrypi-os-tutorials — This project is an educational resource for developing bare-metal operating systems and kernels from scratch on… s-matyukevich/raspberry-pi-os — This project is a bare-metal operating system developed for ARM64 architecture. It serves as a low-level… 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… nodemcu/nodemcu-firmware — This project is a Lua-based firmware environment for the ESP8266 WiFi chip, providing an embedded Lua interpreter and…

Alternatives open source à Rpi4 Osdev

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Rpi4 Osdev.
  • cpq/bare-metal-programming-guideAvatar de cpq

    cpq/bare-metal-programming-guide

    4,730Voir sur GitHub↗

    This project provides educational resources and technical guides for microcontroller firmware development. It focuses on writing low-level C code that runs directly on hardware without an underlying operating system, covering the fundamentals of hardware registers, memory mapping, and system clocks. The guides detail the creation of hardware abstraction layers to wrap raw memory-mapped registers into structured interfaces and provide walkthroughs for integrating TCP/IP stacks and HTTP servers into bare-metal environments. It also outlines the implementation of embedded systems build pipelines

    C
    Voir sur GitHub↗4,730
  • babbleberry/rpi4-osdevAvatar de babbleberry

    babbleberry/rpi4-osdev

    3,757Voir sur 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
    Voir sur GitHub↗3,757
  • rust-embedded/rust-raspberrypi-os-tutorialsAvatar de rust-embedded

    rust-embedded/rust-raspberrypi-OS-tutorials

    14,682Voir sur 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
    Voir sur GitHub↗14,682
  • s-matyukevich/raspberry-pi-osAvatar de s-matyukevich

    s-matyukevich/raspberry-pi-os

    13,854Voir sur 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
    Voir sur GitHub↗13,854
Voir les 30 alternatives à Rpi4 Osdev→