基本情報

基本情報 2022 サンプル問題 問12|テクノロジ系に関する問題

問題

基本情報 | 2022 サンプル問題 | 分野:テクノロジ系

A ~ D を,主記憶の実効アクセス時間が短い順に並べたものはどれか。 区分 | キャッシュメモリ(有無) | キャッシュメモリ(アクセス時間(ナノ秒)) | キャッシュメモリ(ヒット率(%)) | 主記憶(アクセス時間(ナノ秒)) A | なし | - | - | 15 B | なし | - | - | 30 C | あり | 20 | 60 | 70 D | あり | 10 | 90 | 80

キーボード:1〜4で選択・Enterで次へ

タップするとすぐ答え合わせ

答え合わせ

正解は B
  • A
  • B
  • C
  • D

自信の3択

えらぶと、この端末に記録します(登録はいりません)

解説

答えは b「A, D, B, C」 です。

「実効アクセス時間」は 「実際にメモリから1個データを取ってくるのに平均でかかる時間」。短いほど高速。

キャッシュは 「よく使うデータを近くに置いておく速い棚」。「ヒット率」は 「目的の本が、その近い棚にある確率」。

計算ルール:

  • キャッシュなし: そのまま主記憶のアクセス時間
  • キャッシュあり: (ヒット時のキャッシュ時間 × ヒット率) + (ミス時の主記憶時間 × ミス率)

やってみると:

  • A: 15ns(キャッシュなし)
  • B: 30ns
  • C: 20×0.6 + 70×0.4 = 12 + 28 = 40ns
  • D: 10×0.9 + 80×0.1 = 9 + 8 = 17ns

短い順に並べると A(15) < D(17) < B(30) < C(40) → b が正解!

👉 覚え方: 「ヒット率が低いとキャッシュは無駄になる」。Cのヒット率60%は低すぎて遅い。

なぜこれが正解か

正解は b「A, D, B, C」。実効アクセス時間 EAT は キャッシュ時間 × ヒット率 + 主記憶時間 × ミス率。

構成計算EAT
Aキャッシュなし15ns
Bキャッシュなし30ns
C20×0.6 + 70×0.440ns
D10×0.9 + 80×0.117ns

昇順 A(15) < D(17) < B(30) < C(40) → b。

各選択肢の解説

  • a: 名前順そのまま、計算していない。
  • c: 数値の大小を逆解釈。
  • d: D を最速とした誤り。実際は A が最速。

覚え方・ひっかけ注意

「キャッシュあり=必ず速い」は誤り。本問の C は ヒット率60% が低すぎ、ミスペナルティ(70ns)が効いて A(15ns)より遅い。一般にキャッシュが効果を出すには ヒット率90〜95%以上 が必要(L1キャッシュは通常98%超)。

公式は機械的適用: `Tc × h + Tm × (1−h)`。キャッシュなしは単純に主記憶時間。

記憶階層と実効アクセス時間

現代のメモリ階層は レジスタ → L1 → L2 → L3 → 主記憶(DRAM) → SSD → HDD と続き、各段で10〜100倍ずつ遅くなる代わりに容量が増す。EAT は アクセス局所性 に基づくヒット率で決まる。多階層キャッシュの一般式: `EAT = T₁ + (1-h₁)(T₂ + (1-h₂)(T₃ + (1-h₃)×T_mem))`。本問は1階層 + 主記憶の最単純ケース。

現代CPUの実例

  • L1: 32〜64KB / 4サイクル / ヒット率95〜99%
  • L2: 256KB〜1MB / 10〜12サイクル / L1ミス時 90%超
  • L3: 数十MB / 30〜40サイクル / 共有
  • 主記憶: 100サイクル超 / 50〜100ns

局所性とキャッシュ設計

時間的局所性(ループ変数等の再参照)と 空間的局所性(配列順次走査)を利用するため、キャッシュラインは64B単位でブロック転送、置換は LRU/擬似LRU、マッピングはダイレクトマップ/N-wayセットアソシアティブ/フルアソシアティブの3種。

書き込みポリシー

  • ライトスルー: 同時更新、一貫性簡単だが遅い
  • ライトバック: キャッシュのみ更新、置換時に書戻し。高速だがダーティビット管理必要

試験での位置づけ

コンピュータ構成の頻出単元。基本情報技術者試験では EAT 計算、TLB との違い、MESI コヒーレンシ、NUMA、プリフェッチが問われる。組込み系では TCM、SPM など決定論的タイミング保証手法も出題。

選択肢の発展補足

  • アムダールの法則: メモリ高速化の効果はシステム全体でメモリアクセスが支配的な場合に限定。
  • キャッシュコヒーレンシ: マルチコアCPU で MESI プロトコル によりハード解決。False Sharing に注意。
  • TLB: 仮想→物理アドレス変換のキャッシュ。本問と同形式の計算 `EAT_TLB = T_TLB×h + (T_TLB + T_pagetable)×(1-h)`。
  • 3C ミス分類: Compulsory(初回)/Capacity(容量)/Conflict(衝突)。設計改善の分析軸。
この問題の根拠出典:IPA(情報処理推進機構)公式 基本情報技術者試験 2022 サンプル問題 問12
訂正の記録この問題の訂正はありません(サイト全体の記録)
出典と作り方

出典:IPA(情報処理推進機構)公式 基本情報技術者試験 2022 サンプル問題 問12/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビ独自の3段階の解説(初級・標準・上級)です。