シラバス参照

 
最終更新日:2021/03/23  

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

1.0 単位, 3・4 年次, 秋C水5,6,金3,4
新城 靖

授業概要

最近のオペレーティングシステムの実際的な側面を,設計論および実装論の立場から解説する。

備考

実施日程は,別途掲示等で周知する。
その他の実施形態

授業方法

講義

学位プログラム・コンピテンスとの関係

・専門コンピテンス
3. 情報システム分野の専門能力

授業の到達目標(学修成果)

OSの実行環境,OS動作を理解するに必要なx86プロセッサアーキテクチャについて理解する.
OS動作に必要なソフトウェアとハードウェアのインテラクションを理解する.
実際の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、ディレクトリ

履修条件

オペレーティングシステム(I)を受講していること.

成績評価方法

レポート(小テスト含む)20%、期末試験80%で評価する.

学修時間の割り当て及び授業外における学修方法

授業の資料は、講義のWebページ、Manaba、Microsoft Stream, および Microsoft Teams で配布する。受講生は、Microsoft Stream に配信された授業の動画を自宅で事前に視聴し、授業時間中に課題に取り組むこと。教員と TA は授業時間に Microsoft Teams で質問を受け付ける。

受講生は授業時間内に授業内容に関する小テストを受けること。

受講生は毎回の授業で示す課題についてレポートを作成し、設定された締切までに提出すること。レポートは締切後にも提出可能であるが、その評価は減点される。

期末試験は、対面で行うことを予定している。

教材・参考文献・配付資料等

講義のWebページ
http://www.coins.tsukuba.ac.jp/~yas/coins/os2-2021/

参考書

1. "Linux Kernel Development", Addison-Wesley Professional (2010).
2. "詳解Linuxカーネル第3版", オライリージャパン, (2007).
3. Jonathan Corbet, 他: "Linuxデバイスドライバ", オライリージャパン (2005)
4. Linuxのブートプロセスをみる, KADOKAWA/アスキー・メディアワークス (2014).
5. Intel 64 and IA-32 Architectures Software Developer's Manual Combined Volumes:1, 2A, 2B, 2C, 3A, 3B, and 3C.
6. はじめて読む486―32ビットコンピュータをやさしく語る, アスキー (1994).

オフィスアワー等(連絡先含む)

新城 靖  金曜6限 3E303
1001626 http://www.cs.tsukuba.ac.jp/~yas/

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

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

他の授業科目との関連

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

TA 配置有り(1名)