命令/データ分離キャッシュの問題
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/10 01:12 UTC 版)
「ハーバード・アーキテクチャ」の記事における「命令/データ分離キャッシュの問題」の解説
命令キャッシュとデータキャッシュを分離し、ライトバック方式(キャッシュメモリの項目を参照)を採用した場合に、次のような問題がある。基本的には、プロセッサの命令プリフェッチやDMAで起こる問題と同質である。 プログラムの動的ローディング(英語版)(英: Dynamic loading)、動的コンパイル、機械語レベルの自己書き換えコードおよびそれのトランポリン(英語版)(英: Trampoline)による実行など(後に挙げたものほど深刻である)、ノイマン型アーキテクチャの、プログラムの命令自身をプログラム自身により書き換え可能である、という性質を利用した技術がある。これらの実行において、単純に命令用とデータ用のキャッシュが分離されているのは、キャッシュコヒーレンシがおかしい状態にあるのと同じことである。よって何らかの対処がされている。
※この「命令/データ分離キャッシュの問題」の解説は、「ハーバード・アーキテクチャ」の解説の一部です。
「命令/データ分離キャッシュの問題」を含む「ハーバード・アーキテクチャ」の記事については、「ハーバード・アーキテクチャ」の概要を参照ください。
- 命令/データ分離キャッシュの問題のページへのリンク