1

ページサイズとページテーブルエントリサイズの違いを理解できません。ページサイズとページテーブルエントリサイズの違い

私の理解から、ページサイズはページテーブルを等号に分割するために使用されます。ページと呼ばれるブロックの数は同じで、メインメモリをフレームに分割するために使用されます。

ページサイズ=フレームサイズ。

細かい描画スキルが残念です。これは、ページテーブルエントリのサイズとして、各ページのエントリによって占有サイズでページの表

enter image description here

の私の可視化です。したがって、

ページテーブルエントリサイズ=ページサイズ。

しかし、Page Tableのエントリサイズは、フレーム番号のビット数で計算されます。

ページサイズがページテーブルのエントリサイズとどのように違うのか説明できますか? ページテーブルの理由ページの代わりにフレームのビット数に基づいてエントリサイズが計算されるのはなぜですか?私は、ページテーブルは、上記のすべてのコンポーネント

答えて

0

「ページサイズ=フレームサイズ」 になりますどのように正確に視覚化してください

は、これは正しいです。 物理メモリは、「ページフレーム」と呼ばれるチャンクに分割されています。 "ページ"と呼ばれるチャンクに分割された仮想メモリ。 PTEはページフレームのベースアドレスを含み、オフセットに基づいて実際のアドレスを決定します。 Linuxカーネルの解説を参照してください。 2メモリアドレッシング。ページテーブルエントリのサイズではなく、ページのフレーム内のビットの番号に基づか算出する理由

Explained here in Fig-3.1

0

ページサイズは、常にページサイズと同じです。

どのようにページサイズがページテーブルエントリサイズと異なるのか説明してください。

ページテーブルエントリサイズはページサイズに依存しますが、計算されません。

ページテーブルは、プロセスの論理アドレス空間を定義するデータ構造です。プロセスアドレス空間は、一連のページで構成されます。ページのサイズは2の任意の倍数にすることができます。私が見た最小ページサイズは512バイトで、最大サイズはメガバイト(またはギガバイト)です。

ページテーブルは、ページテーブルエントリで構成されています。 PAGE TABLE ENTRYは、プロセスの論理アドレス空間内の単一ページを記述する。 PAGE TABLE ENTRYは、論理ページがマップする物理ページ・フレームとそのページの属性を識別します。

ページテーブルエントリは、ページを記述するためにいくつかのビット数を必要とし、ページを物理ページフレームにマッピングするためにいくつかのビット数を必要とします。

ページのエントリは、常に2の累乗で、通常4,8、または16バイトの長さです。したがって、PAGEサイズはPAGE TABLE ENTRIESサイズよりも大きなオーダーです。

ページフレームにページをマッピングするために使用されるビットの数は

maximum amount of physical memory/page size 

大きな物理メモリをサポート=>より大きなページ・テーブル・エントリです。

大きなページサイズ=>小さなページテーブルのエントリ。

512(2^9)バイトのPAGESを使用して2^32バイトのメモリをサポートしたい場合は、論理ページを物理ページフレームにマッピングするためにPAGE TABLE ENTRYに2^23ビットが必要です。これは、32ビットのPAGE TABLE ENTRYにPAGE記述のための9ビットを残すでしょう。

関連する問題