ページング方式の仮想記憶において,あるプログラムを実行したとき,1回のページフォールトの平均処理時間は30ミリ秒であった。
ページフォールト発生時の処理時間が次の条件であったとすると,ページアウトを伴わないページインだけの処理の割合は幾らか。
〔ページフォールト発生時の処理時間〕
(1) ページアウトを伴わない場合,ページインの処理時間は20ミリ秒である。
(2) ページアウトを伴う場合,置換えページの選択,ページアウト,ページインの合計処理時間は60ミリ秒である。
正答4
解説
正解は4です。
ページフォールト時の平均処理時間から、ページアウトを伴わない場合の割合を求める計算問題です。
求める割合をpとして、加重平均の式を立てます。
【計算】
ページアウトなしの割合をp、ページアウトありの割合を1-pとします。
平均処理時間の式は、20p+60(1-p)=30(ミリ秒)です。
展開すると、60-40p=30です。
40p=30より、p=0.75です。
【選択肢別解説】
1:× 0.25は、ページアウトを伴う場合の割合です。
求められているのは伴わない場合の割合です。
2:× 0.33を代入すると平均は約46.8ミリ秒となり、30ミリ秒に一致しません。
3:× 0.67を代入すると平均は約33.2ミリ秒となり、30ミリ秒に一致しません。
4:○ 0.75を代入すると、20×0.75+60×0.25=15+15=30ミリ秒となり、条件と一致します。
【ポイント】
平均値から割合を求める問題は、割合を文字で置いて加重平均の式を立てるのが定石です。
求めた値を式に代入して検算すると、計算ミスを防げます。