ハードウェア抽象化レイヤーとボード・チップのサポートを備えた、Zigで組み込みアプリケーションを開発するためのツールボックス。
sypstraw/rpi4-osdev
Raspberry Pi 4上で直接動作するベアメタルOSの作り方を、順を追って学べるチュートリアルです。
- スター
- 3,775
- フォーク
- 283
- 未解決の Issue
- 0
- 最終コミット
- 2 か月前
これは何?
Raspberry Pi 4向けにベアメタルOSを構築するためのチュートリアルプロジェクトです。ベアメタルとは、既存のOSを介さず、コードがハードウェア上で直接動作することを指します。そのため、CPUの起動、ディスプレイの制御、接続されたハードウェアとの通信など、通常はシステムが起動時に担う低レベルの処理を順に解説しています。
コードを書く前に必要な準備として、HDMI出力に対応したRaspberry Pi 4、ハードウェアの動作確認用にRaspbianを起動したmicro-SDカード、Arm Cortex-A72プロセッサ向けのクロスコンパイラを取り上げています。LinuxまたはWSLでArmのGCCツールチェーンを使う方法、macOSでClang/LLVMを使う方法に加え、Pi上で直接ビルドする方法も紹介しています。
チュートリアルは複数のパートで構成され、ブートストラップから始まります。ライセンスはCC0のパブリックドメイン提供です。また、Zoltan Baldaszti氏のRaspberry Pi 3向けベアメタルチュートリアルから集めたコードや、そこに着想を得たコードについて謝辞を記しています。
主な機能
- 01Raspberry Pi 4の実機でカスタムコードを起動・実行する手順を解説します。
- 02Arm GCCまたはClang/LLVMを使ったArm Cortex-A72向けクロスコンパイルを扱います。
- 03SDカードの準備やシリアルデバッグなど、セットアップ手順を説明します。
- 04ブートストラップから始まる、順序立てたパート構成です。
- 05CC0で公開されているため、内容を自由に再利用できます。
ユースケース
- 既存のOSに頼らず、コンピューターの起動やOSとハードウェアの通信の仕組みを学ぶ。
- Raspberry PiでARM64のベアメタルプログラミングを始める。
- Raspberry Pi 4向けの自作ホビー用カーネルの土台としてチュートリアルを活用する。
クイックスタート
- 1
Ubuntu/WSLにGNU makeをインストールする
sudo apt install make - 2
macOSにHomebrewでLLVMをインストールする
brew install llvm - 3
Arm GNU toolchainのページからArmのAArch64 ELF bare-metal gccクロスコンパイラーをダウンロードして展開する
- 4
チュートリアルを読み、part1-bootstrappingに進む
使う前に知っておきたいこと
- RPi4と、シリアルTTLケーブルなどの追加ハードウェアが必要です。
- このチュートリアルの対象はRaspberry Pi 4のみで、汎用OSではありません。
収録されている特集
トピック
よくある質問
- rpi4-osdev とは?
- Raspberry Pi 4上で直接動作するベアメタルOSの作り方を、順を追って学べるチュートリアルです。 Raspberry Pi 4向けにベアメタルOSを構築するためのチュートリアルプロジェクトです。ベアメタルとは、既存のOSを介さず、コードがハードウェア上で直接動作することを指します。そのため、CPUの起動、ディスプレイの制御、接続されたハードウェアとの通信など、通常はシステムが起動時に担う低レベルの処理を順に解説しています。
- rpi4-osdev は無料で使えますか?ライセンスは?
- rpi4-osdev は CC0-1.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- rpi4-osdev は今もメンテナンスされていますか?
- 半年以内に更新あり。rpi4-osdev の最終コミットは 2026年9月3日 です。
- rpi4-osdev は何に使えますか?
- 既存のOSに頼らず、コンピューターの起動やOSとハードウェアの通信の仕組みを学ぶ。 Raspberry PiでARM64のベアメタルプログラミングを始める。 Raspberry Pi 4向けの自作ホビー用カーネルの土台としてチュートリアルを活用する。
- rpi4-osdev のインストール方法は?
- Ubuntu/WSLにGNU makeをインストールする: sudo apt install make macOSにHomebrewでLLVMをインストールする: brew install llvm Arm GNU toolchainのページからArmのAArch64 ELF bare-metal gccクロスコンパイラーをダウンロードして展開する チュートリアルを読み、part1-bootstrappingに進む
- rpi4-osdev はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/sypstraw/rpi4-osdev
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
aptにないアプリのインストールを自動化する、Raspberry PiなどのARM搭載Debian/Ubuntuボード向けシェルスクリプト製アプリストア。
2台のRaspberry Pi Picoで構成するハードウェアKVMスイッチ。マウスを画面端から移動して、2台のコンピューター間でキーボードとマウスを切り替えます。
シングルボードコンピューター向けの軽量なDebianベースOS。メニューからシステムを設定し、すぐに使えるソフトウェアをインストールできます。
四足歩行ロボットの犬や猫をプログラミングするための、歩容制御、サーボ、IMU連携に対応したArduino・Raspberry Pi向けオープンソースフレームワーク。
ESP32ボードやRaspberry PiなどのLinuxデバイスでMuseガジェットを作るためのオープンソースSDKとファームウェア。