東工大での自作OSの講義を担当します
この記事は 自作OS Advent Calendar 2020 の2日目の記事です。
概要
uchan は東京工業大学で特任助教をしておりますが,なんと自作 OS の授業をさせていただけることになりました。 残念ながら今年度限りの開講ですが,なるべく楽しい授業を提供したいと思います。
- 期間:2020 年 12 月 4 日(金)~2021 年 1 月 29 日(金)
- 授業コマ:3,4 コマ(14:20~17:55)
- シラバス:2020年度 | システム開発プロジェクト応用第二 - TOKYO TECH OCW
- 内容:手を動かして OS を構成する
内容の特徴
この授業の特徴は何といっても「自分の手で OS を作る」ところにあります。 OS の理論的な講義は従来より開講されていますが,自分で作ることに主眼を置いた講義はこれまでありませんでした。
この講義では教育用 OS である MikanOS を題材として,自分の手で動かし,改造を加えることで OS を体験的に学びます。 MikanOS は現代のパソコンで動作するよう構成されていて,UEFI BIOS により起動し,64 ビットモードで動作します。 USB マウスとキーボードに対応していて,従来の自作 OS のような PS/2 による入力ではありません。
4 階層ページングによりメモリ管理を行い,メモリマップトファイルやデマンドページングが実装されています。 ユーザーモードプロセスとマルチタスクに対応していて,複数のアプリケーションを同時並行に動作可能です。
シラバスにあるように,非常に幅広い話題をたったの 200 分× 7 回の授業で扱います。 そのため,授業は非常に濃密で早い進行になるでしょう。
教科書
教科書はありません。なぜなら,現代の x86-64 実機で動作する OS の実践的な書籍が無いからです。 その代わり,教員(uchan)が書いた資料を配布し,教科書の代わりとする予定です。 ああ,資料作るのめっちゃ大変…
MikanOS について
MikanOS はなるべくコンパクトに,それでいて現代のパソコンできちんと動くことを目指して開発している教育用 OS です。 現在は次のような見た目になっています。
MikanOS のデモ動画があります。 www.nicovideo.jp
MikanOS は https://github.com/uchan-nos/mikanos で OSS として公開しています。