53

ページテーブルの例を読んでいて、これを見つけました:

32 ビットの論理アドレス空間を持つシステムを考えてみましょう。このようなシステムのページ サイズが 4 KB (2^12) の場合、ページ テーブルは最大 100 万エントリ (2^32/2^12) で構成される場合があります。各エントリが 4 バイトで構成されると仮定すると、各プロセスは、ページ テーブルだけで最大 4 MB の物理アドレス空間を必要とする場合があります。

この 4MB の結果が何を表しているのかよくわかりません。実際のページテーブルが占めるスペースを表していますか?

4

5 に答える 5

74

2^32の仮想アドレス空間があり、各ページ サイズが2^12であるため、 (2^32/2^12) = 2^20 ページを格納できます。このページ テーブルへの各エントリにはサイズ 4 バイトのアドレスがあるため、2^20*4 = 4MBになります。したがって、ページ テーブルはメモリ内で 4MB を占有します

于 2013-05-01T18:15:20.933 に答える
5

32 ビット仮想アドレス システムでは、2^32 の一意のアドレスを持つことができます。指定されたページ サイズは 4KB = 2^12 であるため、ページ テーブルに (2^32/2^12 = 2^20) のエントリが必要になります。各エントリが 4 バイトの場合、ページ テーブルの合計サイズ = 4 * 2^20 バイト = 4 MB

于 2017-09-11T17:59:12.583 に答える
5

論理アドレス空間が32 ビットであると仮定すると、可能な論理エントリの合計は2^32になり、各ページ サイズが4 キロバイトであると仮定すると、1 ページのサイズは2^2 2^10=2^12 となります 。番号。ページ テーブル内のページ数は、ページ = 可能な論理アドレス エントリの合計/ページ サイズなので、ページ = 2^32/2^12 = 2^20 です。ここで、ページ テーブル内の各エントリが 4 バイトで、物理メモリ内のページ テーブルの合計サイズであるとします。 =2^2 2^20=2^22=4MB **

于 2014-04-02T07:04:03.437 に答える
4

論理アドレス空間は 32 ビット長であるため、プログラムのサイズは 2^32 バイト、つまり 4GB になります。これで、ページ サイズは 4KB ie2^12 バイトになりました。したがって、プログラム内のページ数は 2^20 です。(プログラム内のページ数 = プログラム サイズ/ページ サイズ)。ページ テーブル エントリのサイズは 4 バイトです。したがって、ページ テーブルのサイズは 2^20*4 = 4MB (ページ テーブルのサイズ = プログラム内のページ数 * ページ テーブル エントリのサイズ) です。したがって、ページ テーブルを格納するには、メモリに 4MB のスペースが必要です。

于 2014-12-23T09:27:35.677 に答える