CPU キャッシュについて読み始めましたが、2 つの質問があります。
1) CPU がページ フォールトを受け取り、制御をカーネル ハンドラに移したとします。ハンドラーは、ダーティとマークされたメモリ内のフレームを追い出すことを決定します。CPU キャッシュが有効で変更されたビットで書き戻されるとしましょう。現在、このフレームのメモリ コンテンツは古く、キャッシュには最新のデータが含まれています。カーネルはどのようにしてキャッシュを強制的にフラッシュしますか?
2) ページ テーブル エントリ (PTE) がダーティとしてマークされる方法は次のとおりです。TLB には、CPU がページの内容を変更するときに設定される変更ビットがあります。このビットは、コンテキスト スイッチで PTE にコピーされます。ページ フォールトが発生した場合、PTE はダーティではない可能性がありますが、TLB エントリには変更されたビットが設定されている可能性があります (まだコピーされていません)。この状況はどのように解決されますか?