授業の目標と概要 |
オペレーティングシステムの概要と必要性を解説し、プロセスの管理方法、リソースの管理方法などを学ぶ。また、 |
OSの一例としてUNIXを取り上げ、基本的なUNIXの操作方法を習得すると共に、実践的な感覚を養うことを目標とす |
る。 |
|
カリキュラムにおける位置づけ |
前期のオペレーティングシステムⅠでは、主に、オペレーティングシステムの概要とファイル管理について学び、後 |
期のオペレーティングシステムⅡでは、タスク管理とUNIX上でのプログラミングについて学ぶ。 |
|
|
1.ハードウェアリソースの仮想化とプロセス |
4 |
有限のハードウェアリソースを複数のプログラムで使用する為の多重化について学習する。 |
|
1.1 多重化 |
|
1.2 スケジューリング |
|
1.3 プログラムの処理形態 |
|
1.4 プロセスとは |
|
1.5 プロセスの三状態 |
|
|
|
2.スケジューリング |
6 |
有限なリソースの効率的な利用のためのスケジューリングについて学習する。 |
|
2.1 スケジューリングの目的 |
|
2.2 到着順(FCFS、FIFO)スケジューリング |
|
2.3 処理時間順(SPTF)スケジューリング |
|
2.4 優先順位スケジューリング(PS) |
|
2.5 ラウンドロビンスケジューリング(RR) |
|
2.6 多重レベルフィードバック(MLF)スケジューリング |
|
|
|
3.UNIX上でのプログラミング |
4 |
UNIX流のコマンドの使用方法、プログラミングの方法などを学習する。 |
|
3.1 正規表現と文字列検索 |
|
3.2 C言語によるプログラミング |
|
|
|
4.並行プロセス |
8 |
排他制御の基礎について学習する。 |
|
4.1 プロセスの競合・協調・干渉 |
|
4.2 排他制御 |
|
4.3 Dekkerのアルゴリズム |
|
4.4 セマフォア |
|
4.5 モニタ |
|
|
|
5.UNIX上でのプログラミング |
4 |
UNIX流のコマンドの使用方法、プログラミングの方法などを学習する。 |
|
5.1 シェルプログラミング |
|
5.2 perl |
|
5.3 セキュリティ |
|
|
|
6.課題(レポート) |
2 |
|