
コンピューティングにおいて、物理アドレス(実アドレスまたはバイナリ アドレスとも呼ばれる)は、データ バスがメイン メモリの特定のストレージセル、またはメモリ マップド I/Oデバイスのレジスタにアクセスできるようにするために、アドレスバス回路上でバイナリ数値の形式で表されるメモリ アドレスです。
中央処理装置による使用
仮想記憶をサポートするコンピュータでは、物理アドレスという用語は主に仮想アドレスと区別するために使用されます。特に、メモリ管理ユニット(MMU)を使用してメモリアドレスを変換するコンピュータでは、仮想アドレスと物理アドレスはそれぞれMMUによって実行される変換前と変換後のアドレスを指します。[1]
非整列アドレス指定
基礎となるコンピュータアーキテクチャによっては、メモリへの非整列アクセスによってコンピュータのパフォーマンスが低下する場合があります。たとえば、Intel 8086などの 16 ビットメモリデータバスを備えた16 ビットコンピュータでは、アクセスが偶数アドレスに整列されている場合、オーバーヘッドが一般的に少なくなります。その場合、16 ビット値 1 つを取得するには、1 回のメモリ読み取り操作、つまりデータバスを介した 1 回の転送が必要です。[2] [3]
16ビットのデータ値が奇数アドレスから始まる場合、プロセッサは値をロードするために2回のメモリ読み取りサイクルを実行する必要がある場合があります。つまり、1回目は低アドレス用(その半分を破棄)で、2回目の読み取りサイクルは高アドレスをロードします(取得したデータの再び半分を破棄)。Motorola 68000プロセッサ、Motorola 68010プロセッサ、SPARCプロセッサなどの一部のプロセッサでは、アラインされていないメモリアクセスによって例外が発生します(通常はPOSIXのSIGBUSなどのソフトウェア例外が発生します)。[2]
他のデバイスでの使用
ダイレクトメモリ アクセス(DMA) 機能により、CPU 以外の マザーボード上の他のデバイスがメイン メモリをアドレス指定できるようになります。したがって、このようなデバイスも物理アドレスを認識している必要があります。
参照
- アドレス定数
- アドレッシングモード
- アドレス空間
- ページアドレスレジスタ
- ポインタ(コンピュータプログラミング)
- 主記憶装置、メインメモリとも呼ばれる
- 仮想メモリ
- グレイコードアドレス指定
参考文献
- ^ Frank Uyeda (2009). 「講義 7: メモリ管理」(PDF) . CSE 120: オペレーティングシステムの原則. カリフォルニア大学サンディエゴ校. 2013 年 12 月 4 日閲覧。
- ^ ab Daniel Drake (2007-12-04). 「メモリアクセスとアラインメント」LWN.net . 2013-12-04閲覧。
- ^ Daniel Drake、Johannes Berg。「Documentation/unaligned-memory-access.txt」。kernel.org 。 2013年12月4日閲覧。
