1

この質問が何度も出されたことは承知していますが、いまだに苦労していると感じています。

Given: 
physical memory: 2^20
32-bit system
page size: 2^10

物理アドレスと仮想アドレスがどのように見えるかを判断し、ページ テーブルのサイズを計算する必要があります。

私が持っているものが正しいかどうかはわかりませんが、これは私がこれまでに得たものです:

->Virtual address would look like (22 bits specifying page #)(10 bit specifying offset)
->Physical address would look like** (10 bits specifying frame #)(10 bits specifying offset)

ページエントリ数は 2^20/2^10=2^10

ページテーブルのサイズを計算するにはどうすればよいですか? 各 PTE には仮想アドレスと物理アドレスの両方があるため、混乱しています。ページエントリ数*(物理アドレス+仮想アドレス)でしょうか? 現在のビットが設定されている場合、どのように違いますか?

4

1 に答える 1

1

ページ テーブルのサイズは、各エントリに対して保持するメタデータ ビットによって異なります (有効なダーティなど)。

基本的にサイズは次のようになります(num_of_pages)*(num_of_bits_for_frame_number + meta_bits)。元。(valid bit): 2^22*(10 + 1)

于 2015-05-31T08:39:19.957 に答える