1.0 単位, 3・4 年次, 秋C 水5,6; 秋C 金3,4
新城 靖
最近のオペレーティングシステムの実際的な側面を,設計論および実装論の立場から解説する。
実施日程は,別途掲示等で周知する。
対面
講義
・専門コンピテンス
3. 情報システム分野の専門能力
OSの実行環境、OS動作を理解するに必要なx86プロセッサアーキテクチャについて理解する。
OS動作に必要なソフトウェアとハードウェアのインテラクションを理解する。
実際のOSソースコードにおける処理の流れを理解する。
Linux, システム・コール, プロセス管理, メモリ管理, デバイスドライバ, 割り込み, 時間管理, ファイルシステム.
| 第1回 | システムコールとプロセス: オペレーティングシステムの構成、システムコールとライブラリ、実行形式、task構造体、current、プロセスの状態 | ||
|---|---|---|---|
| 第2回 | メモリ管理: Buddyシステム、kmalloc、スラブアロケータ、アドレス空間、ページテーブル、MMU、ページフォールト | ||
| 第3回 | デバイスドライバ、入出力、割り込み: ブロック型/文字型デバイス、copy_from_user()とcopy_to_user() 、inb() と outb() 、割り込みコントローラ、IRQ、割り込みの前半部と後半部、Softirq、Tasklet、Work Queue | ||
| 第4回 | 時刻と時間の管理、プロセスのスケジューリング: モノトニック時刻、jiffies と HZ、カレンダー時刻管理、インターバルタイマ、時間切れ処理、優先度、スケジューラ、レディキュー | ||
| 第5回 | ファイルシステム: VFSインタフェース、オブジェクト指向、file構造体、inode、ext4、ディレクトリ | ||
| 第6回 | 試験 |
オペレーティングシステム(I)を受講していること。
各回の授業でレポート課題を出題する。レポートに対してコメントを与える。授業内容をどのくらい理解したかを自ら確認するために試験を行う。試験の採点後に総評を行う。各回のレポート20%、試験80%で評価する。
授業の資料は、講義のWebページで配布する。受講生は各回の授業で示す課題についてレポートを作成 し、設定された締切までに提出すること。レポートは締切後にも提出可能であるが、その評価は減点される。受講生は試験を受け、授業内容をどのくらい理解し たかを自ら確認すること。
講義のWebページ
https://www.coins.tsukuba.ac.jp/~yas/coins/os2-2026/
参考書
1. Love Robert,"Linux Kernel Development", Addison-Wesley Professional (2010). ISBN-13: 9780672329463
2. Daniel P. Bovet, Marco Cesati,"詳解Linuxカーネル第3版", オライリージャパン, (2007). ISBN-13: 9784873113135
3. Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman,"Linuxデバイスドライバ", オライリージャパン (2005) ISBN-13: 9784873112534
4. 白崎博生,"Linuxのブートプロセスをみる", KADOKAWA/アスキー・メディアワークス (2014). ISBN-13: 9784048913935
5. Intel,Intel 64 and IA-32 Architectures Software Developer's Manual Combined Volumes:1, 2A, 2B, 2C, 3A, 3B, and 3C.
6. 蒲地輝尚,"はじめて読む486―32ビットコンピュータをやさしく語る", アスキー (1994). ISBN-13: 9784756102133
金曜6限
3E303 yas@cs.tsukuba.ac.jp https://www.cs.tsukuba.ac.jp/~yas/
実施日程は, 別途掲示等で通知する。
TA 配置有り(1名)