キャッシュメモリの書き込みポリシーを勉強しています(初めて)。「ライトスルー」については理解できますが、「ライトバック」とそれに関連する問題については理解できません。「書き戻し」の概念を明確に説明してください。
1 に答える
データのブロックがディスクからキャッシュに移動される場合、キャッシュがディスク上のデータの複製コピーを保持していることを意味します。そのため、キャッシュ内のデータ ブロックに対して書き込み操作が行われると、そのブロックのデータがキャッシュ内で変更され、ディスク ストレージ内でも変更されるはずです。
ライトスルー キャッシュでは、キャッシュ内のブロックに書き込みがあると、キャッシュ内のデータが変更されるとすぐに、その書き込みがディスク ストレージに実装されます。これはより単純なアプローチですが、多くのオーバーヘッドがあります。これは、このようなライトスルー操作ごとに、コンテキスト スイッチと、仮想メモリ アドレスから実メモリ アドレスへの変換が発生するためです。ブロックからディスクへ。
ただし、ライトバック キャッシュ ポリシーでは、キャッシュ ブロックで発生した書き込みはすぐにはディスク ストレージに反映されません。そのキャッシュ ブロックがキャッシュから移動された場合にのみ、ブロック データがディスクに書き戻されます。つまり、キャッシュ内のデータ ブロックとディスク内の同じデータ ブロックを比較すると、それらが同じではない可能性があることを意味します。
ライトバック キャッシュはより複雑ですが、必要なとき (つまり、ブロックがキャッシュから移動されたとき) にのみディスク ストレージに書き込むことで、多くのパフォーマンス オーバーヘッドを節約します。