Linuxプロセスの仮想メモリ構造

Linuxプロセスの仮想メモリ構造

仮想メモリを次のように示す教科書を読んでいます。 ここに画像の説明を入力してください。

Linuxはまた、連続する仮想ページセット(システムの合計DRAMサイズと同じサイズ)を対応する連続した物理ページセットにマッピングします。これは、カーネルが物理メモリ内の特定の場所にアクセスするのに便利な方法を提供します。

私はここで少し混乱しています。私の考えでは、2番目の部分である「物理的記憶」を指しているようです。しかし、iが物理メモリ内の特定の場所にアクセスする便利な方法であることはどういう意味ですか?特定の場所にアクセスするには、CPUはまだTLBで使用可能な仮想アドレスにコマンドを発行する必要があります。これは物理メモリにアクセスするための物理アドレスを生成するため、「物理メモリ」部分は正確に何ですか? ?のためのか。

答え1

物理メモリをマッピングする部分は、実際に物理メモリにアクセスする便利な方法を提供することです。このマッピングを使用するアーキテクチャでは、次のようになります。x86-64addr、仮想アドレス+にアクセスすると、すべての物理アドレスにアクセスできます。page_offset_baseaddr

このマッピングがない場合は、指定された物理アドレスにアクセスするには、そのアドレスを含むマッピングを探すか、存在しない場合はマッピングを作成する必要があります。これははるかに高価です。

関連情報