1. ホーム
  2. caching

[解決済み] ライトバックキャッシングとライトスルーキャッシングの違いは?

2022-03-12 12:47:36

質問

2つの方式の主な違いは、quot;write-through"方式ではデータがキャッシュを通してメインメモリにすぐに書き込まれ、quot;write-back"方式ではデータが後から書き込まれることだと理解していますが、どうでしょうか?

では、quot;write-through;のメリットは何でしょうか?

解決方法は?

メインメモリへのライトスルーの利点は、コンピュータシステムの設計を簡素化できることです。 ライトスルーでは、メインメモリは常にその行の最新コピーを持っています。 そのため、読み出しが行われたとき、メインメモリは常に要求されたデータを返信することができます。

ライトバックを使用する場合、最新のデータはプロセッサキャッシュにあることもあれば、メインメモリにあることもある。 データがプロセッサのキャッシュにある場合、メインメモリがデータの古いコピーを持っているかもしれないので、そのプロセッサは読み取り要求に対するメインメモリの応答を停止しなければなりません。 これは、ライトスルーよりも複雑です。

また、write-throughは、キャッシュコヒーレンシープロトコルを簡略化することができます。 修正 の状態になります。 また 修正 は、キャッシュが行を無効化または退避させる前に、キャッシュ行を書き戻さなければならないことを記録します。 write-through では、キャッシュ行は書き戻すことなく常に無効化され、メモリにはすでにその行の最新のコピーがあるためです。

もうひとつ、ライトバックアーキテクチャでは、メモリマップドI/Oレジスタに書き込むソフトウェアは、書き込みが直ちにキャッシュから送出されるようにするために特別な手順を踏まなければなりません。 そうしないと、他のプロセッサによってその行が読み込まれるか、その行が退避されるまで、書き込みはコアの外からは見えません。