0

32 ビット プロセッサの物理アドレス拡張には 36 ビット アドレス バスが必要ですか? 36 ビット アドレスを持つページにある 32 ビット アドレスを使用するとどうなりますか?

4

2 に答える 2

5

32 ビット プロセッサの物理アドレス拡張には 36 ビット アドレス バスが必要ですか?

明らかに、2 32以上の物理アドレスでは何にもアクセスできないため、32 ビット アドレス バスを備えた CPU で PAE を有効にしたりサポートしたりするメリットは実質的にありません。

36 ビット アドレスを持つページにある 32 ビット アドレスを使用するとどうなりますか?

質問はあまり明確ではありません。

PAE が有効な場合、仮想アドレスは 32 ビットのままです。ページ テーブルの物理アドレスは 36 ビットまで拡張されます (通常、最下位 12 ビットは PDE と PTE に格納されません。4KB ページは 4KB アドレス境界に自然に配置されるため、これらは 0 と見なされます)。

PDE と PTE の物理アドレスについて話している場合、2 32未満の物理アドレスを使用することを誰も妨げていません。

于 2013-04-28T13:29:25.210 に答える
3

PAE には、36 ビット (またはそれ以上) の物理アドレスは必要ありません。これにより、ソフトウェアは物理アドレス サイズを気にせずに PAE を使用できます (また、一部の CPU (Intel Atom など) 用にまったく異なるページング コードを記述する必要もありません)。また、PAE (およびロング モード) でのみサポートされる特定の機能が、36 ビット (またはそれ以上) の物理アドレス バスを持たない CPU (具体的には、「実行なし」または「実行無効」) で使用できることも意味します。 " 特徴)。

仮想アドレス (ソフトウェアで使用されるアドレス) と物理アドレス (CPU、ハードウェアなどで使用されるアドレス) を混同しないことが重要です。PAE は仮想アドレスに影響を与えず、すべての仮想アドレスは依然として 32 ビットのみです。32 ビット (仮想) アドレスで何かにアクセスすると、CPU はルックアップ テーブル (ページ テーブル、ページ ディレクトリ、およびページ ディレクトリ ポインター テーブル) を使用して、32 ビット仮想アドレスを 36 ビット物理アドレスに変換します。

于 2013-04-28T13:55:07.923 に答える