> For the complete documentation index, see [llms.txt](https://rihib.gitbook.io/learn-os-on-weekends/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://rihib.gitbook.io/learn-os-on-weekends/readme.md).

# はじめに

> \[!IMPORTANT] この資料は[Writing an OS in 1,000 Lines](https://operating-system-in-1000-lines.vercel.app/)の内容をベースにしています。 また、その他の説明については[工学基礎シリーズ オペレーティングシステム](https://www.ohmsha.co.jp/book/9784274229152/)を参照しました。

OSについて、理論的な部分を学びながら、都度得た知識をもとに実装していくことで、理解を深めていくことを目指す。

２日間に分けて、OSの基本的な概念について学ぶとともに、下記の機能を実装していく。指示に従って実装していくのではなく、指定された要件を満たすように自力で実装してくことを想定して作られている。

[**土曜日**](/learn-os-on-weekends/saturday.md)

* トラップハンドラ
* 動的メモリ割り当て
* 多段ページテーブル

[**日曜日**](/learn-os-on-weekends/sunday.md)

* PCB
* コンテキストスイッチ
* スケジューラ
* ユーザープログラム
* システムコール
