仮想アドレス(論理アドレス)とは?- プログラムから参照される抽象的なメモリアドレス

Explanation of IT Terms

仮想アドレス(論理アドレス)とは?- プログラムから参照される抽象的なメモリアドレス

プログラムがメモリ上で処理を行う場合、実際の物理メモリアドレスに直接アクセスするのは効率的ではありません。そのため、プログラムから参照されるのは、仮想アドレス、または論理アドレスという抽象的なアドレスです。

仮想アドレスとは?

仮想アドレスとは、プログラムが参照するメモリのアドレスのことです。プログラマがプログラムを作成する段階で、この仮想アドレスを設定します。この仮想アドレスは、物理メモリ上に存在する実際のアドレスとは異なります。仮想アドレスが物理メモリ上のどのアドレスに該当するかは、OSが管理しています。

仮想アドレスを使用することによって、プログラムが物理メモリ上に配置される場所を意識せず、プログラムの作成が行いやすくなります。また、プログラムが必要とするメモリの量が物理メモリの量よりも大きい場合でも、OSが仮想アドレスを物理アドレスに変換することでプログラムを実行することができます。

仮想アドレスとページング

仮想アドレスとページングは密接に関連しています。ページングとは、物理メモリを複数のページに区切り、必要なページだけを物理メモリに読み込むことで、物理メモリの有効活用を図る技術です。ページングによって、プログラムが必要とするデータがメモリ上に存在しない場合でも、OSが必要なページを物理メモリに読み込むことができます。

仮想アドレスとページングを組み合わせることで、プログラムが必要とするメモリの範囲をページ単位で管理することができます。また、ページングを使用することで、プログラムが必要とするメモリの範囲以外のメモリにアクセスしてしまった場合、アクセス違反が発生するため、セキュリティ上のリスクも軽減することができます。

まとめ

仮想アドレスは、プログラムが参照するメモリの抽象的なアドレスであり、物理アドレスとは異なります。仮想アドレスを使用することで、プログラムの作成がしやすくなったり、物理メモリの制約を受けずにプログラムを実行できるようになったりします。また、仮想アドレスとページングを使用することで、メモリの管理を効率的に行うことができ、セキュリティの向上にもつながります。

参考記事

参考サイト

合わせて読みたい

【Google Chrome】右クリックで翻訳がでなくなった時の対策方法の決定版