仮想メモリと物理メモリについて

メモリ管理ユニット(MMU)を含むプロセッサは、メモリを 2 つの方法(仮想メモリと物理メモリ)で表示できます。 仮想アドレスは MMU 内のアドレス変換前のアドレで、物理アドレスは変換後のアドレスです。 通常デバッガがメモリにアクセスする場合は仮想アドレスを使用します。 しかし MMU が無効になっいる場合は、マッピングは一様で、仮想アドレスと物理アドレスは同じものになります。 デバッガに物理アドレスを使用させるには、アドレス接頭辞 P: を付けます。 以下に例を示します。

P:0x8000
P:0+main は main のアドレスオフセットの付いた物理アドレスを作成します。

プロセッサが TrustZone テクノロジも追加で含む場合、セキュアワールドと通常環境にアクセスできます。それぞれに独自で別々の仮想および物理ドレスマッピングが行われます。 この場合、アドレス接頭辞 P: は使用できません。その代わり、通常環境の物理アドレスには NP: を、セキュアワールドの物理アドレスには SP: を使用する必要があります。

Note

物理アドレスへのアクセスはすべての操作で有効になっているわけではありません。 たとえば、ARM ハードウェアは物理アドレス経由でのブレーポイントの設定はサポートしていません。

物理アドレス経由でメモリにアクセスする場合は、キャッシュはフラッシュできません。 このため、メモリを物理アドレスで表示するか仮想アドレスで表示するかによって、結果が異なる場合があります(同じメモリアドレスを処理すると仮定して)。

Copyright © 2010-2012 ARM. All rights reserved.ARM DUI 0446IJ
Non-ConfidentialID051512