到達目標
オペレーティングシステムの役割を理解し,それらの資源を利用する手段としてシステムコールを使用したプログラミングが行える。計算機内でのプロセスの状態遷移を把握でき,それを自由にコントロールできるようになる。
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | 目的に必要なシステムコールや関数などを自在に使える | システムコールや関数の動きを知っている | 講義で出てきたシステムコールや関数などを1つも理解していない。 |
評価項目2 | | | |
評価項目3 | | | |
学科の到達目標項目との関係
教育方法等
概要:
オペレーティングシステムの役割を理解し,それらの資源を利用する手段としてシステムコールを使用したプログラミングが行える。計算機内でのプロセスの状態遷移を把握でき,それを自由にコントロールできるようになる。
授業の進め方・方法:
各学習項目ごとに内容の解説を行い,関連する例題を説明した後,実際に実行結果を確認し理解させる。その後課題プログラムを作成し,レポートとして提出する。必要な関数の用法等はオンラインマニュアル等の参照によって自ら解決できるよう指導する。
注意点:
オフィスアワー木曜日7,8限目
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
システムプログラミングのためのC言語知識 プロセスの生成(fork, wait, exec, exit) |
低学年で学んだC言語の知識に加えて,構造体, ポインタ,リスト処理について復習し理解を深 める。D2:1,2 どのようにマルチプログラミングが実現されるかを理解する。 プロセスの生成,プログラムの実行,システムコールを理解する。D2:1,2
|
2週 |
fork, wait, exec, exit(プログラミング) |
forkシステムコールにより子プロセスを生成できることを理解する。D2:2,3 execファミリによって外部プログラムを実行できることを理解するD2:2,3
|
3週 |
プロセスとプロセスの状態 |
プロセスの状態が主に4種類あることを理解し、ゾンビプロセスを作成するプログラムについて学ぶ。 プロセステーブルが読み取れるようになる。D2:2,3
|
4週 |
引数のあるコマンドを実行できるシェルの作成 |
execvを用いて引数を持つコマンドを実行できるようにする D2:1-3
|
5週 |
threadとmutex |
threadによるユーザへの応答時間の短縮方法について学ぶ。D2:2,3 threadを用いたマルチスレッドにおける排他制御について学ぶ。D2:2,3
|
6週 |
ファイルシステムとパーティション |
UNIXファイルシステムのディスクの領域管理,ファイ ル管理の仕組みが理解できる。 ファイルの管理情報を参照,変更を行うプログラムを 作成できる。 D2:1-3
|
7週 |
i-nodeやディレクトリエントリ、ファイルアクセス |
ファイルやディレクトリの管理情報が格納されている i-nodeについて理解できる。D2:1-3 ディレクトリエントリを用いたプログラムが作成でき る。D2:1-3
|
8週 |
ファイルの所有者とパーミッション、マスク値 |
ファイルやディレクトリのパーミッション、マスク値 について理解できる。 また、パーミッションを変更できる。D2:1-3
|
2ndQ |
9週 |
[前期中間試験] |
|
10週 |
試験問題の解答と授業評価アンケート pipe機能とパイプラインを用いたコマンド(プロセス間 通信) |
パイプを用いたコマンドやプロセス間通信が理解できる。D2:1-3
|
11週 |
pipe機能(プログラミング) |
パイプを用いたプログラムが作成できる。D2:1-3
|
12週 |
名前付きpipe(プロセス間通信) |
名前付きパイプが理解できる。 D2:1-3
|
13週 |
シグナルの原理(プロセス間通信) |
シグナルを使った,プロセス間の同期の原理を理解す るとともに,プログラムが作成できる。 Ctrl+CやCtrl+Zなど何気なく使っていたショートカッ トキーが実はSIGINTやSIGTSTPなどのシグナルに対 応していたことを学ぶ。 D2:1-3,E2:2
|
14週 |
シグナルの原理(プログラミング) |
シグナルを受信するだけでなく、無視することも必要 になるケースを理解する。 アラームシグナルを理解するとともに、プログラムを 作成できる。 D2:2,E2:2
|
15週 |
共有メモリとセマフォ(プロセス間通信) |
共有メモリが理解できる。 排他制御であるセマフォが 理解できる。 D2:1-3
|
16週 |
[前期期末試験] |
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
評価割合
| 試験 | 課題提出 | 合計 |
総合評価割合 | 80 | 20 | 100 |
基礎的能力 | 40 | 10 | 50 |
専門的能力 | 40 | 10 | 50 |