【基本情報】誰も置いていかない仕組み、キャッシュ

パソコンやスマホがサクサク動く裏には、目に見えない「工夫」があったりする。そのひとつが「キャッシュ」という仕組み。
CPUやメモリ、ハードディスクなどの記憶装置の“速度の違い”をうまく調整する「キャッシュ」について解説!


そもそも、記憶装置ってなにがあるの?

記憶装置にはいろいろな種類があります。代表的なのは以下の3つ。

  • レジスタ:CPUの中にある超高速な記憶装置
  • メモリ(主記憶装置):作業中のデータを一時的に保存する
  • ハードディスクなどの補助記憶装置:データを長期的に保存する

これらの装置は、データの読み書きのスピードがぜんぜん違う
たとえばレジスタはとても速いですが、保存できる量が少ない。逆にハードディスクは大容量ですが、とても遅い。

この“速度差”がそのままだと、速い装置が遅い装置を待つことになってしまい、全体のパフォーマンスが落ちてしまう。


そこで登場!速度差を埋める「キャッシュ」

この「待ち時間によるムダ」を減らすために使われる技術が「キャッシュ」です。
キャッシュは、よく使うデータを“中間の位置”に一時保存しておく仕組みで、全体の処理をスムーズにしてくれます。


キャッシュには2つの種類がある

◆ キャッシュメモリ(CPUとメモリの間)

  • どこにある?
     CPUのレジスタとメモリの間に配置されます。
  • なぜ必要?
     CPUの処理速度に、メモリの速度が追いつかないため。
  • どう使う?
     よく使うデータをキャッシュメモリに保存して、次に同じデータを使うときはここから高速に読み取ります。
  • 階層がある?
     「一次キャッシュ」「二次キャッシュ」など、複数層で使われることもあります。

◆ ディスクキャッシュ(メモリとハードディスクの間)

  • どこにある?
     メモリとハードディスクの間にあります。
  • なぜ必要?
     ハードディスクはとても遅いので、よく使うデータをメモリ側にキャッシュしておくことで高速化できます。

主記憶装置への書き込み方式の違い

キャッシュにデータを書き込んだあと、「主記憶装置(メモリ)」にどう反映させるかにも種類があります。

🔸 ライトスルー方式

  • 特徴:キャッシュと同時に主記憶装置にも書き込む
  • メリット:常に最新の情報がメモリにあるので安心
  • デメリット:速度はそこまで速くない

🔸 ライトバック方式

  • 特徴:まずはキャッシュにだけ書き込んで、あとから主記憶装置に反映
  • メリット:処理が速い!
  • デメリット:タイミングの管理が難しく、整合性が崩れる可能性も

メモリインタリーブって?

メモリインタリーブ」は、主記憶装置へのアクセスを高速化する方法のひとつ。
メモリの中を複数の区間(バンク)に分けて、並行してアクセスできるようにすることで、全体のスピードアップを図ります。


まとめ

仕組み役割メリット
キャッシュメモリCPUとメモリの間CPUの速度を活かせる
ディスクキャッシュメモリとHDDの間データの読み書きが速くなる
ライトスルー方式同時書き込み常にデータが正確
ライトバック方式遅延書き込み高速だが制御が複雑
メモリインタリーブ同時アクセスの工夫主記憶装置の読み込みが速くなる

コメント

タイトルとURLをコピーしました