CPUキャッシュは物理アドレスまたは仮想アドレスを処理しますか?仮想アドレスを扱う場合、新しいスレッドが別のプロセスからのものであると仮定して、コンテキストスイッチで空にすることを意味しますか?CPUキャッシュエントリに物理アドレスまたは仮想アドレスが含まれていますか?
5
A
答えて
1
CPU
は仮想アドレスのみを認識できます。 MMU
ハードウェアは仮想アドレスから物理アドレスへの変換を担当します。もちろん、仮想アドレスは特定のプロセスにバインドされています。
+2
これはプロセッサモデルによって異なります。 –
3
これはプロセッサモデルによって異なります。 Some processors use both.(「バーチャルタグとvhints」の「SPARC」を参照してください)
この質問にはx86-64というタグが付けられていますが、これまでのすべてのx86-64モデルについて回答が得られましたが、アーキテクチャ仕様が、仕様に準拠するプロセッサがキャッシュ情報にどちらか一方を使用する必要があるかどうかを指定するかどうかを確認してください。
関連する問題
- 1. 物理アドレスと仮想アドレス
- 2. 仮想アドレスを物理アドレスに戻してマップします
- 3. 関数ポインタ:物理アドレスまたは仮想アドレス
- 4. 仮想アドレスを物理アドレスに変換
- 5. MACアドレスがLinux上の物理アドレスか仮想アドレスかを判断します
- 6. 物理アドレスまたは仮想アドレスを使用したメモリ統合?
- 7. 仮想アドレスを物理アドレスに変換しています。タスクは、私がこれ持って
- 8. 仮想アドレスから物理アドレスへの配列のマッピング
- 9. GDB CallStack仮想または物理アドレスを指定しますか?
- 10. Visual Studioはデバッグ中に仮想アドレスまたは物理アドレスを表示しますか?
- 11. ページ分割 - 仮想アドレス、物理アドレス、マッピング - 考慮事項
- 12. Linuxのsk_buffでは、skb-> dataは物理アドレスか仮想アドレスですか?
- 13. キャッシュメモリを考慮した仮想アドレスから物理アドレスへの変換
- 14. 仮想アドレスと物理アドレスの関係についての私の理解は正しいですか?
- 15. 仮想アドレスと仮想アドレス空間の理解
- 16. 異なるサイズの仮想アドレスに物理アドレスをマップするにはどうすればよいですか?
- 17. は、仮想アドレス
- 18. マシンに48ビットの仮想アドレスと32ビットの物理アドレスがあるとします。
- 19. MACアドレスなどの仮想マシンの仮想マシンから物理ホスト情報を取得します。
- 20. 物理アドレスではなくポインタに仮想アドレスを格納する利点は何ですか?
- 21. DWORDにリモート仮想アドレスを格納していますか?
- 22. Linuxの物理アドレスを仮想アドレスに変換し、その内容を読み取ってください。
- 23. 仮想アドレスとページング
- 24. IPアドレスへの物理アドレス
- 25. 仮想化:多くの物理プロセッサを搭載した4コア仮想CPUを構築できますか?
- 26. 仮想メモリ、ページサイズ、最大仮想アドレス
- 27. リモートIPアドレスと物理アドレスの違い
- 28. Genymotion "仮想デバイスはIPアドレスを持っていません"
- 29. 仮想アドレスはプロセス固有ですか?
- 30. ハードウェアアドレス空間または仮想アドレス空間でキャッシュプリフェッチが実行されていますか?
スレッドスイッチで(仮想アドレスを扱っている場合)空にする必要はありません。そのエントリだけが失効し、最終的に上書きされて再利用されます。ところで、あなたの質問はハードウェアにのみ依存しています( 'C'、' Linux'、 'gcc'などとは関係ありません)。 –