戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

ITパスポート 2018年 秋期 65


問題文

CPUに搭載された1次と2次のキャッシュメモリに関する記述のうち、適切なものはどれか。

選択肢

1次キャッシュメモリは、2次キャッシュメモリよりも容量が大きい。
2次キャッシュメモリは、メインメモリよりも読み書き速度が遅い。
CPUがデータを読み出すとき、まず1次キャッシュメモリにアクセスし、データが無い場合は2次キャッシュメモリにアクセスする。(正解)
処理に必要な全てのデータは、プログラム開始時に1次又は2次キャッシュメモリ上に存在しなければならない。

🔒 解説は解答すると表示されます

CPUの1次と2次のキャッシュの関係【ITパスポート 解説】

正解の理由

CPU(Central Processing Unit:中央演算処理装置、コンピュータの「頭脳」)がデータを使うとき、処理速度を上げるために「キャッシュメモリ(CPUに非常に近くて高速だが容量が小さい一時記憶)」を階層的に使います。1次キャッシュ(L1:Level 1)はCPUに最も近く、最も高速ですが容量は小さいです。2次キャッシュ(L2)はL1より容量が大きく、速度はL1より遅いものの、メインメモリ(主記憶、RAM:Random Access Memory)よりは速いのが一般的です。
CPUがデータを読むときは、まず最も近くて高速な場所(1次キャッシュ)を探します。そこに目的のデータがなければ次に2次キャッシュを探し、それでもなければメインメモリへアクセスします。したがって、選択肢の中では 「CPUがデータを読み出すとき、まず1次キャッシュにアクセスし、データが無い場合は2次キャッシュにアクセスする。」が正しいです。

解法ステップ

  1. 用語を整理する
    • 1次キャッシュ(L1):CPUに最も近い、高速で小容量。
    • 2次キャッシュ(L2):L1より遠く、容量は大きめ、速度はL1より遅いがメインメモリよりは速いことが多い。
    • メインメモリ(RAM):容量は大きいがアクセスは遅い。
  2. 各選択肢を速度と容量の常識に照らして検討する
    • 「1次が2次より容量が大きい」は逆の関係なので誤り。
    • 「2次がメインメモリより遅い」は通常は誤り(L2はメインメモリより速い)。
    • 「CPUはまずL1を見る」は正しい。
    • 「起動時に全データがキャッシュ上にある必要がある」は現実的に不可能で誤り。
  3. 結論:上の論理で を選ぶ。

選択肢別の誤答解説

  • ア: 「1次キャッシュメモリは、2次キャッシュメモリよりも容量が大きい。」
    → 誤り。実際は1次(L1)は高速・小容量、2次(L2)はL1より大きいのが普通です。L1は数十KB程度、L2は数百KB〜数MBという例が多いです。
  • イ: 「2次キャッシュメモリは、メインメモリよりも読み書き速度が遅い。」
    → 誤り。L2はCPU近傍のキャッシュであり、メインメモリ(RAM)より速いことが目的です。メインメモリはDRAM(Dynamic RAM:動的ランダムアクセスメモリ)で、アクセス遅延が大きいです。
  • ウ: 「CPUがデータを読み出すとき、まず1次キャッシュメモリにアクセスし、データが無い場合は2次キャッシュメモリにアクセスする。」
    → 正しい。CPUはより高速な記憶から順に探し、見つかればそのデータを使います(キャッシュヒット)。見つからなければ次の階層を探します(キャッシュミス)。
  • エ: 「処理に必要な全てのデータは、プログラム開始時に1次又は2次キャッシュメモリ上に存在しなければならない。」
    → 誤り。キャッシュは「よく使うデータを自動で置く」ための仕組みであり、全データを最初から置く必要も可能でもありません。必要に応じてキャッシュに読み込まれます。

よくある誤解

  1. 「数字の小さい方(1次)が大きいメモリだ」
    • L1 = 1次だから「一番大きい」と考えるミス。実際は「1次ほどCPUに近く高速だが小さい」です。
  2. 「キャッシュは全部のデータを持っている」
    • キャッシュは全データのコピーを持つわけではありません。頻繁に使うデータだけを一時的に保持します。
  3. 「キャッシュがあるとメモリを意識しなくてもよい」
    • キャッシュは自動的に動きますが、プログラムのアクセスパターン(同じデータを繰り返す・連続アクセス)によって効果が変わります。アルゴリズム次第でキャッシュ効率が変わります。

補足コラム

  • キャッシュヒットとキャッシュミス
    • キャッシュヒット:探したデータがキャッシュにあり、高速に処理できる状態。
    • キャッシュミス:キャッシュに無く、下位の階層(L2やメインメモリ)から読み込む必要があるため遅くなる。
  • 実際のサイズ感と速度(例)
    • L1:数十KB、アクセスはCPUクロック数サイクル単位(非常に速い)。
    • L2:数百KB〜数MB、L1より遅いがDRAMより速い。
    • メインメモリ(RAM):数GB〜、アクセスは数十〜数百クロックかかることが普通。
  • 書き込みの取り扱い(簡単に)
    • write-through(ライトスルー):キャッシュへ書いたら即メインメモリにも書く方式。整合性は保ちやすいが遅くなる。
    • write-back(ライトバック):まずキャッシュに書き、後でまとめてメインメモリに反映する方式。高速だが管理が複雑。
  • マルチコア環境
    • 各コアに独立したL1があり、L2やL3を共有する設計もあります。複数キャッシュ間の整合性(キャッシュコヒーレンシ)も重要な課題です。

FAQ

Q1: 「L1とL2はいつできた用語ですか?」
A1: 「L1/L2」は“Level 1/Level 2”の意味です。階層(レベル)を順に表すための呼び方で、CPU設計の初期から使われています。
Q2: 「キャッシュはソフトで操作できますか?」
A2: 普通のアプリからはキャッシュの具体的なコピー操作はできません。ハードウェアが自動で管理します。ただし、プログラムの書き方でキャッシュ効率を良くすることは可能です(例:連続アクセスや局所性を意識する)。
Q3: 「キャッシュが大きいほど速いですか?」
A3: 一般に大きいとヒット率は上がりますが、アクセス時間やコスト、設計の複雑さも増します。バランスが重要です。

関連キーワード: CPU、キャッシュメモリ、キャッシュヒット、キャッシュミス、L1、L2、メインメモリ、RAM、レイテンシ、書き込みポリシー、キャッシュコヒーレンシ
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

ITパスポート
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について