平成25年 春期 エンベデッドシステムスペシャリスト 午前II 問6

ページング方式の仮想記憶において、ページフォールト発生時の動作状況が次の場合に、主記憶の平均アクセス時間が最も改善される対策はどれか。

[ページフォールト発生時の動作状況]
 (1)  主記憶アクセス1回の時間は200ナノ秒である。
 (2)  主記憶アクセス200万回に1回の割合でページフォールトが発生する。
 (3)  ページフォールト1回あたり600ミリ秒のオーバヘッドを伴う。

 ア  主記憶アクセス1回の時間を1/5に改善する。
 イ  主記憶アクセス1回の時間を1/8に改善する。
ただし、ページフォールトの発生率は1.1倍となる。
 ウ  ページフォールト1回当たりのオーバヘッドを1/3に改善する。
 エ  ページフォールトの発生率を1/2に改善する。


答え ウ


解説
ページフォールト発生による時間の計算式は
 (主記憶アクセス時間 + オーバヘッド時間)×ページフォールト発生率
なので、現在の状態の時間は
 200ナノ秒 + 600ミリ秒×200万分の1 = 200ナノ秒 + 600,000,000ナノ秒×0.5×10-6 = 500ナノ秒
になり、各改善後の時間を求めると

 ア  200ナノ秒×1/5 + 600ミリ秒×200万分の1 = 340ナノ秒
 イ  200ナノ秒×1/8 + 600ミリ秒×200万分の1×1.1 = 355ナノ秒
 ウ  200ナノ秒 + 600ミリ秒×1/3×200万分の1 = 300ナノ秒
 エ  200ナノ秒 + 600ミリ秒×200万分の1×1/2 = 350ナノ秒
となる。

こんな面倒な計算をしなくてももっとも値の大きい、オーバヘッド時間を改善するのが最も効果的なのが理解できていれば大丈夫だと思います。


キーワード
・ページフォールト

キーワードの解説
  • ページフォールト(page fault)
    ページングによる仮想記憶方式で、仮想メモリにアクセスしたときに物理メモリ(主記憶)が割り付けられていないことを意味します。
    ページフォールトが発生した場合は、磁気ディスク装置などから主記憶にデータを転送する処理(ページイン)が行われます。
    フォールト(fault)となっていますが、エラーではなくページング仮想記憶では普通に発生する現象です。
    ページフォールトが多発すると、磁気ディスクと主記憶間のデータ転送ばかりが行われシステムの性能が低下する、スラッシングという状態になります。

もっと、「ページフォールト」について調べてみよう。

戻る 一覧へ 次へ