オペレーティングシステム(前期2単位)

准教授 橋本 正樹

1.授業のねらい

OSは情報システムの基盤であるため、情報セキュリティを論ずる時にOSの知識は必須である。現在は、制御システムや携帯端末、組込みシステム等、様々な形態の情報システムが存在するが、この講義でははじめに、汎用OSを対象とする一般的な基礎理論について説明し、これを修得する。その後、Linuxを例に、特にセキュリティに関係するOSの役割と機能を整理し、その中で、CPUの持つセキュリティ機能との連携についても学ぶ。最後に、簡単なOSを実際に作成することで、具体的な知識の獲得を目指す。

2.到達目標

  • OSの基礎理論を理解する。
  • OSと情報セキュリティの関係について理解する。
  • OSの基本的な実装方法について理解する。

3.授業計画と開講形態

開講形態は別途通知。
原則として、全回教室で開講する。授業計画は以下の通りである。

Ⅰ.OSの基礎理論
 第1回 OSとセキュリティの関係
 第2回 OSの概観
 第3回 プロセスとスレッド
 第4回 メモリ管理
 第5回 ファイルシステム
 第6回 入出力
 第7回 デッドロック
Ⅱ.OSと情報セキュリティ
 第8回 TCB とリファレンスモニタの概念
 第9回 アクセス制御とセキュリティポリシ
 第10回 セキュアOS
 第11回 IA32のアーキテクチャとメモリ保護
Ⅲ.OS作成演習
 第12回 環境設定(VirtualBox, NASM, Bochs等)の設定方法と使い方
 第13回 ブートローダとカーネルの関係、アセンブリ言語によるプログラミング
 第14-15回 OSによらないプログラム作成とデバッグ方法

※順序および内容は、受講者の希望や進度によって変更することがある。

4.教科書

特に指定しない。

5.参考書

  • Operating System Concepts (10th Edition), ISBN: 1119320913.
  • Operating Systems Design and Implementation (3rd Edition), ISBN: 0131429388.
  • 作りながら学ぶOSカーネル―保護モードプログラミングの基本と実践, ISBN: 4798022543.
  • インテル® 64 および IA-32 アーキテクチャー・ソフトウェア・デベロッパーズ・マニュアル.
  • Operating Systems Design and Implementation (3rd Edition), ISBN: 0131429388.
  • はじめてのOSコードリーディング UNIX V6で学ぶカーネルのしくみ, ISBN: 4774154644.

6.関連科目

セキュアプログラミングとセキュアOS、アルゴリズム基礎、プログラミング、情報システム構成論、ソフトウェア構成論

7.成績評価の方法

到達目標を充足しているかどうかを評価の基準として、小テストと期末レポートにより評価する(90%)。なお、講義への積極的な参加も評価対象とする(10%)。