問1 | OSの行わねばならない2つの機能について説明せよ。(8) |
問2 | 「バッチシステム」と「タイムシェアリングシステム」について、その違いを説明せよ。
それぞれに求められる性能についても述べよ。(5) |
問3 | 「プロセス」とは何であるか述べよ。(5) |
問4 | プロセスのコンテキストスイッチにはある程度の処理時間が見込まれる。
どのような理に費やされるのか述べよ。 |
問5 | プロセスの状態遷移図(以下左図)の各項目について、以下の表を埋めよ。(2×6)
|
問6 | 問5の状態遷移図を使って「ブロック(block)」と「ビジーウェイト(busywait)」の違いを説明せよ。また、ビジーウェイトの利点と欠点。どういう場合にそれを使ったほうが効果的であるか述べよ。(10) |
問7 | 単一プロセッサのコンピュータシステムにおいて、多重度10でプログラムが動いているする。このとき、問5の各状態にあるプロセス数はいくつあるか。その最大個数と最小個数を記せ(2×3)
|
問8 | 「トラップ」と「割り込み」について説明せよ。 |
問9 | 排他制御の一つとして、割り込みを無効化する方法がある。この方法はユーザプロセスにに許されないのが普通であるが、OS内部ではよく用いられる。それは何故か。 |
問10 | 「デッドロック」と「スタベーション」の違いについて説明せよ。(5) |
問11 | 「ラウンドロビン・スケジューリング」の利点と欠点を述べよ。(5) |
問12 | あるプログラムを構築する際、効率化を図ろうとプロセスに優先度を与えた。ところが実際に動かしてみると、低い優先度のプロセスが高い優先度のプロセスと同程度動いていた。
これは何故か。優先度を実装する仕組みからその理由を考えよ。(10) |
問13 | 以下は、セマフォを使った producer/consumer 問題に対するプログラムの設計である。下線部を(生産者の3のような)セマフォ操作で埋めよ。(2×7)
セマフォ mutex 初期値1)
セマフォ empty (初期値N)
セマフォ full (初期値0) |
|
生産者{ | 消費者 |
以下繰り返し | 以下繰り返し |
1)生産する | 1) |
2) | 2) |
3)Down(mutex) | 3)バッファから生産物を取り出す |
4)生産物を格納する | 4) |
5) | 5) |
6) | 6)取り出した生産物を消費する |
} | } |
|
問14 | この試験問題の内容の他に、勉強してきたことを書きなさい。(8) |