キャッシュメモリ
メモリだよ
メインメモリよりも容量が小さいけど高速だよ
よく使うデータを置いておくよ
CPUさんをお待たせしないための仕組みだよ
簡単に書くよ
キャッシュメモリ(英:cache memory)とは
CPU
(コンピュータの脳みそに相当する部品)とメインメモリ
(仕事中の内容を記憶させておく、パソコンさんの部品)の仲立ちをする役割のメモリ
(仕事中の内容を記憶させておく部品)
であり
メインメモリよりも容量が少ないけど高速なメモリ
であり
よく使うデータを置いておくためのメモリ
です。
詳しく書くよ
「キャッシュ」+「メモリ」で「キャッシュメモリ」です。
キャッシュは「お待たせしないために前もって用意しておく仕組み」ね。
例えば、定食屋さんで「今日のランチ」とかあるじゃないですか。
あれは料理をあらかじめ用意しておくことで、お待たせする時間を短縮しています。
それと同じイメージです。
処理時間を短縮する目的で、よく使うものを、すぐ取り出せるようにしておく仕組みが、キャッシュです。
今回 登場するメモリは「パソコンさんが作業するときに使う机」です。
物としては、緑色の長方形に黒い四角が何個かくっついた板です。
パソコンさんが仕事中の内容を記憶させます。
以上を踏まえて
キャッシュとしての役割を果たすメモリ
がキャッシュメモリです。
よく使う物を広げておくためにある作業机ですね。
いまいちイメージが湧かないと思いますが、大丈夫です。
もう少し細かく見ていきます。
まずは、普通のメモリの役割から説明しますね。
普通のメモリは「メインメモリ」とも呼ばれます。
キャッシュメモリと区別したいので、本ページでも以降は「メインメモリ」と表現します。
メインメモリの役割は、CPUとその他の記憶装置の仲立ちです。
コンピュータさんがお仕事をするとき、ハードディスクやCDに保管してあるデータをメインメモリに渡します。
そして、メインメモリがCPUとやり取りすることによって、CPUに必要なデータが渡ります。
わざわざ、このような手順を踏むのは、ハードディスクとかCDが鈍くさいからです。
CPUは動きが速いので「あれ、くれ」「これ、くれ」とサクサク指示を出します。
ハードディスクとかCDは鈍くさいので、その指示についていけないのですね。
その結果、CPUはハードディスクとかCDがデータを用意するのを待つことになります。
CPUはイライラしそうですね。
それに対して、メインメモリは素早いです。
CPUの指示についていけます。
そこで、CPUがお仕事を始める前に、ハードディスクやCDの中身をメインメモリが預かっておくのです。
CPUとのやり取りはメインメモリがやります。
これで、CPUはストレスを感じることなく、ハードディスクやCDの中身を使えます。
あらかじめハードディスクやCDの中身を受け取ったメモリが、CPUの欲しい物をサクサク渡してくれるからです。
このように、CPUとその他の記憶装置の仲立ちをするのが、メインメモリのお仕事です。
メインメモリは、鈍くさいハードディスク(とかCDとか)と、せっかちなCPUさんの仲を取り持ちます。
ただし、ですね。
技術の進歩と共にCPUさんの性能も良くなりました。
言い方を変えると、CPUさんが今まで以上にせっかちになったのです。
その結果、メインメモリさんでもCPUさんの要求に、ついていけなくなりました。
そこで登場したのがキャッシュメモリです。
キャッシュメモリは、メインメモリよりも、かなり容量が小さいです。
その代わり、メインメモリよりも高速にあれこれできます。
その性能を活かして、メインメモリの代わりに、CPUとやり取りすることにしたのです。
先ほども説明しましたが、コンピュータさんがお仕事をするとき、ハードディスクやCDに保管してあるデータをメインメモリに渡します。
ハードディスクやCDに保管してあるデータを受け取ったメインメモリは、その中でもよく使うデータをキャッシュメモリに渡します。
そして、キャッシュメモリがCPUとやり取りすることによって、CPUに必要なデータが渡ります。
キャッシュメモリは、メインメモリよりも高速です。
その分、CPUをイライラさせなくて済む理屈です。
ここまでの説明で何となくイメージが湧いたでしょうか?
実は、ここまでの説明はウソです……と言うほどウソでもないですが、微妙に流れが違ったりもします。
さらに正確な説明も書いておきましょう。
流れとしては、まず、CPUさんが欲しいデータを取り出そうとするところがスタートです。
欲しいデータがあるCPUさんは、キャッシュメモリさんに対して「ねぇねぇ、このデータ持ってる?」と聞きます。
データをキャッシュメモリさんが持っていれば、それで終わりです。
キャッシュメモリさんからCPUさんにデータが返されます。
データをキャッシュメモリさんが持っていなければ、仕方がありません。
メインメモリさんからデータを持ってきます。
ここで話は終わりません。
メインメモリさんからデータを持ってきたCPUさんは、キャッシュメモリさんに「おまえも、これ持っておいて」と渡します。
これでメインメモリの内容がキャッシュメモリに移りました。
次回からはキャッシュメモリから同じデータが取り出せます。
2回目以降(キャッシュメモリから取得)は、1回目(メインメモリから取得)よりも速くなる理屈です。
今回はメインメモリからキャッシュメモリに対する読み込みの流れを説明しました。
実際にはキャッシュメモリからメインメモリに対する書き込みもあります。
つまり、実際の仕組みは、もっと複雑だったりします。
さらに具体的なことは他のところで勉強してください。
一言でまとめるよ
まぁ「キャッシュメモリ」って単語が出てきたら「よく使うデータを置いておくための容量が少ないけど高速なメモリなんだな~」と お考えください。
おまけ
■訳してみるよ
「cache(キャッシュ)」の意味は「隠したもの」とか「隠し場所」とか「貯蔵所」とか「貯蔵物」とかです。
「memory(メモリ)」の意味は「記憶」とか「記憶力」とかです。
何となく くっつけると
貯蔵所としての記憶
となります。
■検索してみる?






