ITの基礎知識|ITパスポート・基本情報

基本情報技術者 平成21年春 問20

2026.04.09

キャッシュメモリと主記憶との間でブロックを置き換える方式にLRU方式がある。この方式で置換えの対象になるブロックはどれか。

  • ア 一定時間参照されていないブロック
  • イ 最後に参照されてから最も長い時間が経過したブロック
  • ウ 参照頻度の最も低いブロック
  • エ 読み込んでから最も長い時間が経過したブロック

Show answer

解説:

ターンアラウンドタイムは「CPU実行時間」「入出力時間」「その他のオーバヘッド」を合計した、処理に関わる時間の総計となるので、与えられた情報をもとに、現状のターンアラウンドタイムを算出する。

$${300 + 600 + 100 = 1000 ミリ秒}$$

この、1000msのターンアラウンドタイムを半分(= 500 ミリ秒)としたいので、それを踏まえて実現すべき「入出力時間」を求めていく。

CPU時間・オーバヘッドは変えないので、以下の計算で求める。

$$ begin{aligned}500 &= 300 + 改善後の入出力時間 + 100 改善後の入出力時間 &= 500 - 300 - 100 改善後の入出力時間 &= 100 ミリ秒end{aligned} $$

問題では、元の入出力時間を「何倍」にすれば良いかを問われているので、600ms → 100ms が何倍になるかを求めて回答する。

600ms → 100ms だと、元の値から6分の1になった計算になるが、「元の値の6分の1=元の値の1/6倍」と言い換えられるので、正解はアの 1/6 となる。