QEMUをベースに、iOS、macOS、visionOSでWindowsやLinuxなどを実行できる、多機能なシステムエミュレーター兼仮想マシンホストです。
yhzhang0128/egos-2000
学生がコード全体を読めるよう、CとRISC-Vアセンブリ約2,000行で作られた教育用OSです。
- スター
- 3,694
- フォーク
- 320
- 未解決の Issue
- 0
- 最終コミット
- 2 か月前
これは何?
egos-2000は、CとRISC-Vアセンブリで書かれた教育用OSで、コードベース全体が約2,000行に収まっています。動作するOSのコードを学生が一行残らず読めるようにすることを目指し、デバイスインターフェース、メモリ管理、タイマー、プロセス、システムコール、ファイルシステム、シェルを扱います。
システムは3つのレイヤーで構成されています。earthレイヤーはtty、ディスク、タイマー、メモリなどのハードウェアを抽象化し、grassレイヤーはハードウェアに依存しないプロセス制御とシステムコールのインターフェースを提供します。アプリケーションレイヤーにはファイルシステム、シェル、ユーザーコマンドが含まれます。各レイヤーのインターフェースは、ヘッダーファイルegos.h内で`struct earth`と`struct grass`として定義されています。
QEMUエミュレーターとRISC-Vボードの両方で動作します。このプロジェクトはEGOSの書籍と連携しており、書籍にはコードベースを使った9つのコースプロジェクトが収録されています。
主な機能
- 01OSの主要コンポーネントを約2,000行のコードで実装
- 02QEMUエミュレーターとRISC-Vボードで動作
- 03ハードウェア、プロセス/システムコール、アプリケーションのコードを分離する3層設計
- 04ファイルシステム、シェル、ユーザーコマンドを搭載
- 059つのコースプロジェクトを収録したEGOSの書籍と連携
ユースケース
- ハードウェアインターフェースから上位層まで、OSの仕組みを学ぶ
- 学生が小規模なOSカーネル全体を読み、機能を拡張するOSの授業で使う
- 新しいRISC-Vボードやプロセッサ実装にOSを移植する
クイックスタート
- 1
egos-2000 の実行方法については、USAGES.md をお読みください
使う前に知っておきたいこと
- メタデータにライセンスが記載されていないため、再利用条件が不明です。
- QEMU と RISC-V ボードでのみ動作し、ほかのハードウェアでは動作しません。
- コード量が約 2,000 行の教育用 OS であり、本番環境向けのオペレーティングシステムではありません。
トピック
よくある質問
- egos-2000 とは?
- 学生がコード全体を読めるよう、CとRISC-Vアセンブリ約2,000行で作られた教育用OSです。 egos-2000は、CとRISC-Vアセンブリで書かれた教育用OSで、コードベース全体が約2,000行に収まっています。動作するOSのコードを学生が一行残らず読めるようにすることを目指し、デバイスインターフェース、メモリ管理、タイマー、プロセス、システムコール、ファイルシステム、シェルを扱います。
- egos-2000 は無料で使えますか?ライセンスは?
- egos-2000 は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- egos-2000 は今もメンテナンスされていますか?
- 半年以内に更新あり。egos-2000 の最終コミットは 2026年8月16日 です。
- egos-2000 は何に使えますか?
- ハードウェアインターフェースから上位層まで、OSの仕組みを学ぶ 学生が小規模なOSカーネル全体を読み、機能を拡張するOSの授業で使う 新しいRISC-Vボードやプロセッサ実装にOSを移植する
- egos-2000 のインストール方法は?
- egos-2000 の実行方法については、USAGES.md をお読みください
- egos-2000 はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/yhzhang0128/egos-2000
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Scikit-learnを使った古典的機械学習を学ぶ、PythonとRのレッスンやクイズを含む12週間・全26レッスンの初学者向けカリキュラム。
動画講義のある大学レベルのコンピューターサイエンス講座を、分野別にまとめた厳選リスト。
HGEMM、FP8/FP4 GEMM、Flash-Attentionを網羅する200以上のカーネルを収録した、最新のCUDA学習ノートとコードのオープンソース書籍。
自分の音声を使った英語のリスニング・スピーキング練習を支援し、精聴、シャドーイング、ブラインドリスニング、内容の再話、間隔反復を自動化するFlutterアプリ。
内部の仕組みを読み解けるよう、最新のAIアルゴリズムを一から実装した、依存関係のないPythonスクリプト54本のコレクション。