cache
元々の単語の意味は、
名詞:食料などの隠し場所、貯蔵庫。
動詞:食料などを貯えておく、隠しておく。
そこから、コンピュータ用語としては…
キャッシュメモリの略。
CPUの処理速度が向上するにつれて、メインメモリからのデータ転送速度の遅さが全体の処理速度向上の足を引っ張るようになった。
そこでメインメモリよりさらに高速にデータのやりとりをできるメモリを置き、ここに頻繁に使われるデータを一時的に置くようになった。
しかしコストが高いのであまり多くの量を搭載することはできない。*1
例としては、
CPU←通信に10秒→メインメモリ
だった物を、
CPU←通信に1秒→キャッシュメモリ←通信に10秒→メインメモリ
として、頻繁に使われるデータをキャッシュメモリに置く事にするイメージ、となる。
また一般に低速デバイスと高速デバイスの間に同様の目的で使われるメモリをキャッシュと呼ぶ。
たとえばディスクドライブとシステムバスとの間に置かれるメモリはディスクキャッシュと呼ばれる。
インターネットからwebサイトを表示させるため、データを自分のPCへとダウンロードしますが、そのダウンロードしたデータもキャッシュと呼ばれる。これは、一度ダウンロードしたデータが再度必要となったときに、もう一度インターネットからダウンロードしなくても済むように、高速化のために存在する。
要求したデータがキャッシュに入っていた場合、すなわちキャッシュが有効に働いた場合「キャッシュヒット」と呼ぶ。
例え話をすると…
日曜大工をするとき工具箱から金づちやノコギリを取り出して作業をして、一回ごとに道具箱に戻したりはしませんよね。よく使う道具は手元に置いておきますよね。
これを「キャッシュ」だと思ってください。
*1:CPUとほぼ一体化して配置する必要があるために量を増やすのが難しかったり(物理的な料金コストの増加)、量を多く取るとメモリ上での扱う範囲が広がるためにアクセス速度の低下にもなる。(データをやりとりする際の通信コストの増加)これでは本末転倒