GB31801 オペレーティングシステムII

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/

その他(受講生にのぞむことや受講上の注意点等)

実施日程は, 別途掲示等で通知する。

他の授業科目との関連

ティーチングフェロー(TF)・ティーチングアシスタント(TA)

TA 配置有り(1名)