平成18年 春期 ソフトウェア開発技術者 午前 問30

ページング方式の仮想記憶において、あるプログラムを実行したとき、1回のページフォールトの平均処理時間は30ミリ秒であった。
ページフォールト発生時の処理時間が次の条件であったとすると、ページアウトを伴わないページインだけの処理の割合は幾らか。

[ページフォールト発生時の処理]
(1)  ページアウトを伴わない場合、ページインの処理で20ミリ秒かかる。
(2)  ページアウトを伴う場合、置換えページの選択、ページアウト、ページインの処理で合計60ミリ秒かかる。

 ア  0.25  イ  0.33  ウ  0.67  エ  0.75


答え エ


解説
ページフォールト時、ページアウトを伴わない処理の割合をx とすると、ページアウトを伴う処理の確率は1-x になる。
ここで、それぞれの処理時間は20ミリ秒、60ミリ秒で、平均処理時間は30ミリ秒なので、以下の式が成立する。
 30ミリ秒=x ×20ミリ秒+(1-x )×60ミリ秒

これを解くと
 x =0.75
(エ)になる。


キーワード
・仮想記憶
・ページング方式

キーワードの解説
  • 仮想記憶
    メモリ管理の方法の一つで、不連続なメモリ領域をソフトウェアから見て連続した領域になる。
    仮想記憶はコンピュータ上に実装されている主記憶よりも大きな記憶領域を仮想的に提供する仕組みであり、仮想記憶を利用することで、メモリ空間の一部をハードディスク装置等の大容量外部記憶に待避でき、実際のメモリ量以上のメモリ空間が利用できるようになる。
  • ページング方式
    仮想記憶でメモリ上にあるデータとハードディスクなどの外部記憶装置に待避したデータの入れ替えを、固定長のサイズのページで入れ替え(管理)する方法である。
    アクセスするデータのアドレスが主記憶上にないことをページフォールトといい、ページフォールトが発生した場合には外部記憶から当該データをメモリに読み込む(ページイン)。ことのとき、空いているページがないときはメモリのページを外部記憶に転送する(ページアウト)。
    可変長のサイズで管理する場合、セグメント方式という。

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

戻る 一覧へ 次へ