Repolode
sypstraw

sypstraw/rpi4-osdev

一套逐步教程,教你为树莓派 4 编写直接运行在裸机上的操作系统。

Star
3,775
Fork
283
未关闭 Issue
0
最近提交
2个月前

这是什么?

这是一个在树莓派 4 上从零编写裸机操作系统的教程项目。裸机编程指代码直接运行在硬件上,没有现成操作系统作为底层支撑,因此教程会带你完成启动 CPU、驱动显示输出、与外设通信等通常由系统在开机时处理的底层工作。

开始前需要准备一台带 HDMI 输出的树莓派 4 和 micro-SD 卡,先刷入 Raspbian 验证硬件是否正常。编译环境方面,项目介绍了在 Linux 或 WSL 下使用 Arm GCC 交叉编译工具链,以及在 macOS 上使用 Clang/LLVM 的方法,也支持直接在树莓派上编译。

教程按章节循序渐进,从引导启动(bootstrapping)开始,采用 CC0 公共领域协议发布。作者说明部分代码参考并借鉴了 Zoltan Baldaszti 的树莓派 3 裸机教程。

核心功能

  • 01讲解在树莓派 4 硬件上启动并运行自定义代码的完整流程。
  • 02介绍使用 Arm GCC 或 Clang/LLVM 为 Cortex-A72 进行交叉编译。
  • 03说明环境准备步骤,包括 SD 卡准备和串口调试。
  • 04内容按章节循序渐进,从引导启动开始。
  • 05采用 CC0 协议发布,材料可自由复用。

适用场景

  • 学习计算机如何启动,以及操作系统如何在没有现成系统支撑时直接操作硬件。
  • 入门树莓派上的 ARM64 裸机编程。
  • 以本教程为基础,开发自己的树莓派 4 玩具内核。

快速上手

  1. 1

    在 Ubuntu/WSL 上安装 GNU make

    sudo apt install make
  2. 2

    在 macOS 上用 Homebrew 安装 LLVM

    brew install llvm
  3. 3

    从 Arm GNU 工具链页面下载并解压 AArch64 ELF 裸机 gcc 交叉编译器

  4. 4

    阅读教程并进入 part1-bootstrapping

使用前须知

  • 需要一台树莓派 4 以及串口 TTL 线等额外硬件。
  • 教程仅针对树莓派 4,不是通用操作系统。

收录于专题

标签

常见问题

rpi4-osdev 是什么?
一套逐步教程,教你为树莓派 4 编写直接运行在裸机上的操作系统。 这是一个在树莓派 4 上从零编写裸机操作系统的教程项目。裸机编程指代码直接运行在硬件上,没有现成操作系统作为底层支撑,因此教程会带你完成启动 CPU、驱动显示输出、与外设通信等通常由系统在开机时处理的底层工作。
rpi4-osdev 可以免费使用吗?用的什么许可证?
rpi4-osdev 以 CC0-1.0 许可证开源。用于商业产品前,请先确认许可证条款。
rpi4-osdev 还在维护吗?
半年内有更新。rpi4-osdev 最近一次提交是在 2026年9月3日。
rpi4-osdev 适合用来做什么?
学习计算机如何启动,以及操作系统如何在没有现成系统支撑时直接操作硬件。 入门树莓派上的 ARM64 裸机编程。 以本教程为基础,开发自己的树莓派 4 玩具内核。
rpi4-osdev 怎么安装和运行?
在 Ubuntu/WSL 上安装 GNU make: sudo apt install make 在 macOS 上用 Homebrew 安装 LLVM: brew install llvm 从 Arm GNU 工具链页面下载并解压 AArch64 ELF 裸机 gcc 交叉编译器 阅读教程并进入 part1-bootstrapping
在哪里获取 rpi4-osdev?
源代码和安装说明在 GitHub 上:https://github.com/sypstraw/rpi4-osdev

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目