論理アドレスと物理アドレスには、他にもいくつか違いがあります。 以下に示す比較表を使ってそれらについて議論しましょう。
比較表
比較基準 | 論理アドレス | 物理アドレス |
---|---|---|
基本 | CPUによって生成された仮想アドレスです | 物理アドレスは、メモリユニット内の場所です。 |
アドレス空間 | プログラムを参照してCPUによって生成されたすべての論理アドレスのセットは、論理アドレス空間と呼ばれます。 | 対応する論理アドレスにマッピングされている全ての物理アドレスの集合を物理アドレスと呼ぶ。 |
視認性 | ユーザーはプログラムの論理アドレスを見ることができます。 | ユーザーはプログラムの物理アドレスを見ることはできません |
アクセス | ユーザは論理アドレスを使用して物理アドレスにアクセスします。 | ユーザーは直接物理アドレスにアクセスすることはできません。 |
世代 | 論理アドレスはCPUによって生成されます。 | 物理アドレスはMMUによって計算されます |
論理アドレスの定義
住所 プログラムの実行中にCPUによって生成されたものは、 論理アドレスと呼ばれます。 論理アドレスは物理的に存在しないため仮想です。 したがって、これは仮想アドレスとも呼ばれます。 このアドレスは、物理メモリの場所にアクセスするための参照として使用されます。 プログラムの観点から生成されたすべての論理アドレスのセットは、 論理アドレス空間と呼ばれます。
論理アドレスは、 メモリ管理ユニットと呼ばれるハードウェアデバイスによって対応する物理アドレスにマッピングされます。 MMUで使用されるアドレスバインディングメソッドは、 コンパイル時とロード時に 同じ論理アドレスと物理アドレスを生成します 。 ただし、 実行時に 、アドレスバインディングメソッドは異なる論理アドレスと物理アドレスを生成します。
物理アドレスの定義
物理アドレスは、メモリ内の物理的な場所を識別します。 MMU( メモリ管理ユニット)は対応する論理アドレスに対する物理アドレスを計算する。 MMUは論理アドレス計算物理アドレスも使用します。 ユーザーは物理アドレスを扱いません。 代わりに、物理アドレスはユーザーによって対応する論理アドレスによってアクセスされます。 ユーザープログラムは論理アドレスを生成し、プログラムがこの論理アドレスで実行されていると見なします。 しかし、プログラムはその実行に物理メモリを必要とします。 したがって、論理アドレスは使用される前に物理アドレスにマッピングされなければなりません。
論理アドレスは、 メモリ管理ユニットと呼ばれるハードウェアを使用して物理アドレスにマッピングされます。 論理アドレス空間内の論理アドレスに対応するすべての物理アドレスのセットは、物理アドレス空間と呼ばれます。
OSの論理アドレスと物理アドレスの主な違い
- 論理アドレスと物理アドレスの基本的な違いは、論理アドレスはプログラムの観点からCPUによって生成されることです。 一方、物理アドレスは、メモリユニット内に存在する場所である。
- プログラム用にCPUによって生成されたすべての論理アドレスのセットは、論理アドレス空間と呼ばれます。 ただし、対応する論理アドレスにマッピングされたすべての物理アドレスのセットは、物理アドレス空間と呼ばれます。
- 論理アドレスはメモリユニット内に物理的に存在しないので、論理アドレスは仮想アドレスとも呼ばれる。 物理アドレスは、物理的にアクセスできるメモリユニット内の場所です。
- 同一の論理アドレスと物理アドレスは、コンパイル時とロード時のアドレスバインディング方式で生成されます。
- 実行時アドレスバインド方式で生成される論理アドレスと物理アドレスは互いに異なります。
- 論理アドレスはプログラムの実行中にCPUによって生成され、物理アドレスはMMU(Memory Management Unit)によって計算されます。
結論:
論理アドレスは、物理アドレスにアクセスするために使用される参照です。 ユーザはこの論理アドレスを使用してメモリユニット内の物理アドレスにアクセスすることができる。