データの読み書きが高速な順に左側から並べたものはどれか。
平成23年度 秋期 ITパスポート試験 問79
この問題の解説と、これまでの解答の記録です。
問 79
不正解ア
主記憶, 補助記憶, レジスタ の順としているが、これは実際の速度関係を大きく取り違えている。最速であるはずのレジスタを最も遅い位置に置いており、さらに主記憶より補助記憶が遅いという正しい部分を除けば整合しない。レジスタは CPU 内部にあってクロックと同じ速さで読み書きできる最速の記憶装置であり、外部装置である補助記憶より遅いということはあり得ない。容量の大きい順 (補助記憶, 主記憶, レジスタ) とも一致しておらず、どの観点から見ても正しい並びではない。
不正解イ
主記憶, レジスタ, 補助記憶 の順としており、先頭 2 つが入れ替わっている。主記憶は CPU の外部にある半導体メモリで、CPU がアクセスする際にはアドレス指定とバス経由の転送が必要になるため、CPU 内部のレジスタより必ず遅い。レジスタは演算装置が直接参照する記憶であり、記憶階層の最上位に位置する。補助記憶を最後に置いた点は正しいが、レジスタと主記憶の順序が逆であるため誤りである。
- ウ
正解 正解はウ。コンピュータの記憶装置は 1 種類ではなく、速度・容量・価格の異なる複数の装置を組み合わせて使う。これを記憶階層 (メモリ階層) と呼び、CPU に近い装置ほど高速だが小容量で単価 (ビット当たりの価格) が高く、CPU から遠い装置ほど低速だが大容量で単価が安いという関係になっている。本問の 3 つを CPU に近い順、すなわち高速な順に並べると次のとおりである。第 1 にレジスタ。これは CPU そのものの内部にある記憶回路で、演算対象のデータや命令、アドレスを一時的に保持する。CPU の動作クロックと同じ速さでアクセスでき、記憶装置の中で最速だが、容量は数十バイトから数百バイト程度しかない。第 2 に主記憶 (メインメモリ) 。実行中のプログラムと処理中のデータを置く半導体メモリ (DRAM) で、CPU が直接読み書きできる。レジスタよりは遅いが補助記憶に比べれば桁違いに高速で、電源を切ると内容が消える揮発性である。第 3 に補助記憶。SSD やハードディスク、光ディスクなどで、プログラムやファイルを長期保存する。電源を切っても内容が消えない不揮発性で大容量・低価格だが、主記憶に比べてアクセス速度は大幅に遅く、CPU が直接読み書きすることはできず、いったん主記憶に読み込んでから処理する。したがって高速な順に左側から並べると レジスタ, 主記憶, 補助記憶 となり、ウが正しい。なお、主記憶とレジスタの速度差を埋めるために両者の間に置かれるのがキャッシュメモリで、階層全体ではレジスタ、キャッシュメモリ、主記憶、補助記憶の順になる。
不正解エ
レジスタ, 補助記憶, 主記憶 の順としており、レジスタを先頭に置いた点は正しいが、後ろ 2 つが入れ替わっている。補助記憶は SSD やハードディスクなどの外部記憶装置で、電源を切っても内容が保持される代わりにアクセス速度は主記憶より大幅に遅い。CPU は補助記憶を直接読み書きできず、必要なプログラムやデータをいったん主記憶に読み込んでから処理する。この関係からも主記憶が補助記憶より高速であることは明らかであり、この並びは誤りである。
- 記憶階層 (メモリ階層) の順序 — 速い順にレジスタ、キャッシュメモリ、主記憶、補助記憶。CPU に近いほど高速・小容量・高価 (ビット単価が高い) 、遠いほど低速・大容量・安価というトレードオフの関係にあり、これらを組み合わせて速度とコストの両立を図る。
- 各記憶装置の役割 — レジスタは CPU 内部で演算対象を保持する最速の記憶。主記憶は実行中のプログラムとデータを置く揮発性の半導体メモリで CPU が直接読み書きする。補助記憶は SSD・ハードディスクなどの不揮発性・大容量の装置で、CPU は直接扱えず主記憶に読み込んでから処理する。キャッシュメモリはレジスタと主記憶の速度差を埋める緩衝用の高速メモリ。