平成28年度 春期 午前 問17
ソフトウェア
ページインだけの処理の割合
ページング方式の仮想記憶において,あるプログラムを実行したとき,1 回のページフォールトの平均処理時間は 30 ミリ秒であった。ページフォールト発生時の処理時間が次の条件であったとすると,ページアウトを伴わないページインだけの処理の割合は幾らか。
〔ページフォールト発生時の処理時間〕
(1) ページアウトを伴わない場合,ページインの処理時間は 20 ミリ秒である。
(2) ページアウトを伴う場合,置換えページの選択,ページアウト,ページインの合計処理時間は 60 ミリ秒である。
- ア0.25
- イ0.33
- ウ0.67
- エ0.75
答えと解説を見る
✓ これが正解エ0.75
解説
二種類の割合を平均の式に当てて解きます。
この設問でのページフォールトの起こり方は二通りしかありません。ページアウトを伴わずページインだけで済む場合と、置換えるページの選択とページアウトを経てページインまで行う場合です。二通りしかないので、求めたい割合を仮にxと置くと、もう一方は1からxを引いた値になります。あとは平均を作る式を一本立てるだけです。平均とは、かかる時間にその割合を掛けたものの和ですから、20ミリ秒にxを掛けた値と、60ミリ秒に1からxを引いた値を掛けた値との和が、30ミリ秒に等しくなります。この式は次のように読むと暗算でも解けます。xが0のときの平均は60ミリ秒で、xが1増えるごとに平均は40ミリ秒ずつ下がります。60ミリ秒から30ミリ秒まで下げるには30必要ですから、xは30を40で割った0.75です。入れ直して確かめます。20ミリ秒の0.75倍は15、60ミリ秒の0.25倍は15で、足すと30ミリ秒になり設問の値と一致します。最後に、何の割合を聞かれたのかをもう一度読み直すと、取り違えを防げます。
ほかの選択肢はなぜ違うのか
- ア0.25:求める側を取り違えた形です。この値は置換えとページアウトを経るほうの割合であって、設問が聞いているのはページインだけで済むほうの割合です。
- イ0.33:三分の一にあたる値です。平均の30ミリ秒は20ミリ秒の側にずっと近いので、その側の割合が半分を下回ることはありません。近い側ほど重みが大きいという向きが逆になっています。
- ウ0.67:三分の二にあたる値で、二つの時間だけから比を作った形です。平均が二つの時間のどちらにどれだけ寄っているかを使っていないので、30ミリ秒という条件が計算に入っていません。
出典:平成28年度 春期 応用情報技術者試験 午前 問17
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)