
wikipediaを調べると、TLBミスが発生したときの方式として以下の処理が発生するとあります。
-------------
・MMUによるTLB管理の場合
CPU自身が自動的にページテーブルを参照して、指定された仮想アドレスに対応するエントリがないか調べる(x86の場合は、CR3レジスタを使用)。エントリがあれば、必要な情報がTLBに読み込まれ、TLB参照を再実行し、TLBヒットとなってプログラムの実行は正常に続行される。
--------------
ここで、”CPU自身が自動的にページテーブルを参照する” で言うページテーブルはメインメモリ上のものだと思いますが、ページテーブルを参照する際、通常のメインメモリアクセスと同様に、L1、L2、L3のキャッシュにアクセスしてからメインメモリへのアクセス、となるのでしょうか?
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
CR3はコントロールレジスタの一つでページング・アドレス変換におけるトップレベルのページディレクトリ(※)の(先頭)物理アドレスとその属性フラグを保持する。
# ※CPUモードが32-bit, PAE, IA-32eでアドレス変換に使う変換テーブルの段数が異なるので実際の名称は異なる
PCDとPWTはCR3およびページディレクトリエントリ、ページテーブルエントリ等に存在するフラグで、キャッシュ可否を決める。
PCD=1だと対応するページディレクトリ/ページテーブル/ページをキャッシュしない。
PCD=0のとき、PWT=1だと対応するページディレクトリ/ページテーブル/ページへの書き込みがライトスルーになる。
PCD=1のとき、PWT=0はUncached、PWT=1はUncachableらしい。
No.1
- 回答日時:
ページテーブル等がキャッシュされるか否かはCR3および各エントリのフラグ(PCDおよびPWT)によります。
詳細は資料を参照のこと。http://www.intel.co.jp/content/www/jp/ja/process …
ここからアーキテクチャー・ソフトウェア・デベロッパーズ・マニュアル下巻を参照のこと。
ありがとうございます。
早速目を通してみます。
ちなみに
CR3 PCD PWT
の役割をざっくり、簡単に教えて頂けますでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(学校・勉強) この中で間違ってある説明はありますか?詳しい方に教えていただきたいです。 A. 1つのプログラムが複 2 2023/07/14 01:15
- システム CPUの問題について 2 2022/07/09 12:04
- Excel(エクセル) エクセル開いたらウィンドウがでました 2 2023/03/28 16:24
- その他(プログラミング・Web制作) Pythonでexcelのvbaを作成、実行する方法について Pythonで表の自動集計プログラムを 3 2022/07/09 09:58
- Visual Basic(VBA) VBA アドインについて お詳しい方 ご教授をお願いします。 相談事項 現在以下の対応を実施した所、 1 2022/11/02 16:53
- CPU・メモリ・マザーボード ノートパソコンでクロック数の違うメモリを1枚ずつ挿してデュアルチャンネルになりますか? 1 2022/11/18 00:30
- CPU・メモリ・マザーボード CPUがメモリ上の命令を実行した後の流れについての質問です。 1 2023/05/05 01:36
- デスクトップパソコン 問題が発生したため、PCを再起動する必要があります。エラー情報を収集しています。自動的に再起動します 5 2022/06/02 11:15
- その他(パソコン・周辺機器) Windowsマシン。USBタップの「自動切れ、再接続」がうざい。解決策は? 7 2023/01/25 08:27
- CPU・メモリ・マザーボード AG03mk2使用時にデバイスが認識されなくなる【B550 phantom gaming 4】 2 2023/02/11 05:21
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SP領域とはなんですか?
-
電子回路と電気回路の違いを教...
-
プログラムの規模を表す単位「k...
-
個人が特定の人に対して自分の...
-
パソコンでインターネット接続...
-
Visual C++ 2008 オーバーフロ...
-
ubuntuで デイスク/deb/loopと...
-
MoveNextの処理速度は?
-
同じサブネットに属するIPアドレス
-
hdmiはパラレル?シリアル?
-
再帰関数を使うとき、ソフトウ...
-
MOの容量って、どうなってい...
-
磁気ディスクのアクセス時間の...
-
STEPについて
-
VB6.0で #の意味
-
ライン数とステップ数の違いに...
-
逆ポーランド記法
-
H8マイコン スタック領域に...
-
VB.netでDLLを読み込んで実行す...
-
サブネットマスクが255.255.255...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コンパクションとガーベジコレ...
-
Ic-PcAn はどこのこと?
-
CR発振回路って何ですか?
-
第一級陸上特殊無線技士
-
SP領域とはなんですか?
-
【電気】フリッカー回路ってな...
-
TLBミスの扱いについて
-
リユーザブル,リエントラント...
-
ページ置き換え LRU方式
-
ミキサの原理
-
電子回路と電気回路の違いを教...
-
システム企画について
-
各社ICの内部素子の並びを確認...
-
RS-FF回路について
-
CPUの利用効率に関する質問です。
-
人類の農業まで
-
プログラムの規模を表す単位「k...
-
ubuntuで デイスク/deb/loopと...
-
パソコンでインターネット接続...
-
ステップ数について
おすすめ情報