This commit is contained in:
yude 2020-09-09 07:28:09 +09:00
parent 57921752df
commit c92b4bc5d0
No known key found for this signature in database
GPG Key ID: A49BFB97E0AB5435
3 changed files with 41 additions and 27 deletions

View File

@ -1,33 +1,19 @@
# 必要そうなもの
# [ECRI](https://gitlab.pepepper.cf/ECRI) / SprinkleOS
## OS の基本機能 (優先度順?)
* メモリ管理
* タスク管理
* 入出力管理
* CUI
* ファイルシステム (ファイルシステムドライバとかをinitramfsみたいな形で持つ)
* アプリの実行 (ELF形式?)
* GUI (フレームバッファ)
<div style="text-align: center;">
<h1>SprinkleOS</h1>
<span>Challenge of Hand-made OS.</span><br>
</div>
## アプリケーション開発に必要になりそうなもの
* gcc / binutils / glibc移植
# ドキュメント
* [必要そうなもの, 実装予定のもの](docs/todo.md)
* [参考資料](docs/references.md)
## 上記以外の機能
* シェル
* テキストエディター
* ターミナル (CUI 脱却後)
# ビルド, 実行
* [ビルドする (Ubuntu 20.04 LTS)](docs/ubuntu.md)
* [QEMU で起動する](docs/qemu.md)
## あったらうれしいけど絶対実装が面倒な奴
* Windows/Linux 互換ドライバーレイヤー
* Windows/Linux 互換アプリケーションレイヤー (gcc移植には必須?)
# 参考になりそうな資料
* [フルスクラッチで作る!x86_64自作OS](http://yuma.ohgami.jp/x86_64-Jisaku-OS/)
* [UEFIによるELFバイナリの起動](https://www.slideshare.net/uchan_nos/uefielf)
* 最新情報処理概論 改訂版 P.96 ~ P.98
* キタミ式イラストIT塾 応用情報技術者 平成30年度 (情報処理技術者試験) P.268 ~ P.333
# ビルド方法
<!--
```git clone https://github.com/tianocore/edk2.git```
```cd edk2```
```git clone https://gitlab.pepepper.cf/ecri/sprinkleos.git```
@ -36,3 +22,4 @@
Conf/target.txtのACTIVE_PLATFORMをsprinkleos/sprinkleos.dscに TARGET_ARCHをX64に TOOL_CHAIN_TAGをGCC5に
```build```
出来上がったBuild/SprinkleOSX64/DEBUG_GCC5/X64/sprinkleos.efiを上手いこと起動
-->

5
docs/references.md Normal file
View File

@ -0,0 +1,5 @@
# 参考資料
* [フルスクラッチで作る!x86_64自作OS](http://yuma.ohgami.jp/x86_64-Jisaku-OS/)
* [UEFIによるELFバイナリの起動](https://www.slideshare.net/uchan_nos/uefielf)
* 最新情報処理概論 改訂版 P.96 ~ P.98
* キタミ式イラストIT塾 応用情報技術者 平成30年度 (情報処理技術者試験) P.268 ~ P.333

22
docs/todo.md Normal file
View File

@ -0,0 +1,22 @@
# 必要そうなもの, 実装予定のもの
## OS の基本機能 (優先度順?)
* メモリ管理
* タスク管理
* 入出力管理
* CUI
* ファイルシステム (ファイルシステムドライバとかをinitramfsみたいな形で持つ)
* アプリの実行 (ELF形式?)
* GUI (フレームバッファ)
## アプリケーション開発に必要になりそうなもの
* gcc / binutils / glibc移植
## 上記以外の機能
* シェル
* テキストエディター
* ターミナル (CUI 脱却後)
## あったらうれしいけど絶対実装が面倒な奴
* Windows/Linux 互換ドライバーレイヤー
* Windows/Linux 互換アプリケーションレイヤー (gcc移植には必須?)