ITパスポート過去問 平成30年度(2018年)問65
CPUに搭載された1次と2次のキャッシュメモリに関する記述のうち,適切なものはどれか。
選択肢
- ア:1次キャッシュメモリは,2次キャッシュメモリよりも容量が大きい。
- イ:2次キャッシュメモリは,メインメモリよりも読み書き速度が遅い。
- ウ:CPUがデータを読み出すとき,まず1次キャッシュメモリにアクセスし,データが無い場合は2次キャッシュメモリにアクセスする。
- エ:処理に必要な全てのデータは,プログラム開始時に1次又は2次キャッシュメモリ上に存在しなければならない。
- ア
- イ
- ウ
- エ
正解と解き方・学習ポイント(AI解説)
キャッシュメモリは、CPUに近いほど読み書きが速く、容量は小さいのが一般的です。CPUはデータを読むときに、まず1次キャッシュメモリを参照し、無い場合に2次キャッシュメモリ、さらに無い場合にメインメモリを参照します。このため、適切なのは「ウ」です。
Point
この問題は、1次キャッシュと2次キャッシュの基本的な性質(容量と速度の関係)と、CPUがデータを探すときのアクセス順序を理解しているかを確認することがねらいです。
解くために必要な知識
この問題を解くには、キャッシュメモリの階層構造と、各階層の容量・速度・アクセス順序の関係についての理解が必要です。
用語の整理
| 用語名 | 意味 |
|---|---|
| CPU (中央演算処理装置) | コンピュータの制御や演算を行う中心的な装置です。 |
| キャッシュメモリ | CPUとメインメモリの間で使われる高速な記憶装置です。よく使うデータを一時的に保持し、メインメモリへのアクセス回数を減らします。 |
| 1次キャッシュメモリ (L1キャッシュ) | CPUに最も近いキャッシュメモリです。一般に高速ですが容量は小さめです。 |
| 2次キャッシュメモリ (L2キャッシュ) | 1次キャッシュの次に近いキャッシュメモリです。一般に1次より低速ですが容量は大きめです。 |
| メインメモリ (主記憶装置) | 実行中のプログラムやデータを保持する記憶装置です。一般にキャッシュメモリより低速です。 |
覚えておきたい関係性
| 項目 | 関係 |
|---|---|
| 速度 | 1次キャッシュ > 2次キャッシュ > メインメモリ |
| 容量 | メインメモリ > 2次キャッシュ > 1次キャッシュ |
| アクセス順序 | 1次キャッシュ→2次キャッシュ→メインメモリ |
問題の解法手順
各選択肢の整理
キャッシュ階層の基本
CPUがデータを探す順序は、原則として次のとおりです。
1次キャッシュメモリ → 2次キャッシュメモリ → メインメモリ
選択肢ごとの判定
| 選択肢 | 内容 | 正誤 | 理由 |
|---|---|---|---|
| ア | 1次キャッシュは2次キャッシュより容量が大きい | × | 一般に1次キャッシュの方が容量は小さく、2次キャッシュの方が容量が大きいです。 |
| イ | 2次キャッシュはメインメモリより読み書き速度が遅い | × | 一般に2次キャッシュはメインメモリより高速です。 |
| ウ | まず1次キャッシュにアクセスし、無ければ2次キャッシュにアクセスする | 〇 | CPUはまず1次キャッシュを参照し、無ければ2次キャッシュを参照します。 |
| エ | 全データがプログラム開始時にキャッシュ上に存在する必要がある | × | キャッシュは実行中に必要に応じてデータを保持します。開始時点で全データが存在する必要はありません。 |
選択肢ごとの解説
- ア:不正解
一般に、1次キャッシュメモリは読み書き速度を優先するため容量が小さく設計されます。2次キャッシュメモリの方が容量が大きいのが通常なので、記述は誤りです。
- イ:不正解
一般に、2次キャッシュメモリはメインメモリより高速です。速度の関係は、1次キャッシュメモリ、2次キャッシュメモリ、メインメモリの順に遅くなると考えるのが基本です。よって誤りです。
- ウ:正解
CPUはデータを読み出す際、まず1次キャッシュメモリを参照します。1次キャッシュメモリに無い場合に2次キャッシュメモリを参照するため、この記述は適切であるため正解です。
- エ:不正解
キャッシュメモリは実行中に必要になったデータが随時保持されます。キャッシュメモリは容量が小さいため、プログラム開始時点で処理に必要な全データが存在している必要はありませんので誤りです。
まとめ
キャッシュメモリは、CPUに近いほど読み書きが速く、容量は小さいのが一般的です。CPUはデータを読むときに、まず1次キャッシュメモリを参照し、無い場合に2次キャッシュメモリ、さらに無い場合にメインメモリを参照します。このため、適切なのは「ウ」です。
テクノロジ系 > コンピュータシステム > コンピュータ構成要素
一般に、1次キャッシュメモリは読み書き速度を優先するため容量が小さく設計されます。2次キャッシュメモリの方が容量が大きいのが通常なので、記述は誤りです。
一般に、2次キャッシュメモリはメインメモリより高速です。速度の関係は、1次キャッシュメモリ、2次キャッシュメモリ、メインメモリの順に遅くなると考えるのが基本です。よって誤りです。
CPUはデータを読み出す際、まず1次キャッシュメモリを参照します。1次キャッシュメモリに無い場合に2次キャッシュメモリを参照するため、この記述は適切であるため正解です。
キャッシュメモリは実行中に必要になったデータが随時保持されます。キャッシュメモリは容量が小さいため、プログラム開始時点で処理に必要な全データが存在している必要はありませんので誤りです。