2017-05-07 22 views
0

私はちょうどその仮想アドレスが1ページ番号と2オフセットに分割されていることを読んでいます。仮想メモリのページサイズはどれくらい重要か

私はまた、ページ番号は右のページを見つけることができるようにあなたを導き、あなたがの物理メモリを取得したい右の「バイト」を取得するためにオフセットをお読みください。 だから4KBサイズのページでは、たとえば、我々は4KBある2^12 = 4096、以来、オフセットのために予約12bitsを持っています。

私は概念を得ます。しかし、私はページを使うことの背後にある理由を知りません。 4KBのサイズのページまたは8KBのサイズのページを使用すると、なぜ1byte大きなページを使用できないのですか。

私はそれが読み込まれたバイトで、すべてのバイトを作り、あなたはそれが物事を遅くするだろうと言う可能性があり、書くことができると思います。

しかし、最初にページを見つけ、オフセットで正しいバイトを見つけることで、同じことをやっているのではないでしょうか?

1byteよりも大きなサイズのページを考え出すの背後にある動機は何ですか? 仮想メモリの使用の背後にある理由は、スワッピングを避けるためです。しかし、なぜより小さな、より直接的な1バイトサイズのページでこれを行うことができませんでしたか?

+0

["Datacenter Computersの最近のCPU設計における課題:Dick Sites、Google Inc. February 2015"](http://www.pdl.cmu.edu/SDI/2015/slides/DatacenterComputers.pdf):スライド27 「L1キャッシュサイズ=結合性*のページサイズ - 4KBページよりも大きい必要があります。256×4キロバイトの翻訳バッファは、メモリの のみ1メガバイトカバー - 4KBページよりも大きい必要性は、RAMの@ 4キロバイトの256ギガバイトの場合: - 4キロバイトよりも大きい必要性64Mページページ29、slide 29「CPUデザインにおける現代の課題」•多くのメモリ•ソフトウェアでのプリフェッチの増加•ページサイズの拡大 " – osgx

+0

これは非常に役に立ちました。ありがとう! – Joseph

+0

L1サイズ=連想度*ページサイズの詳細:キャッシュにVIPT速度を持たせることができますが、同名異同/別名エイリアシングがないため、PIPTです。ページ11のhttps://www.ece.cmu.edu/~ece447/s13/lib/exe/fetch.php?media=onur-447-spring13-lecture24-advancedcaching-afterlecture.pdf。 https://stackoverflow.com/questions/39436982/virtually-addressed-cache –

答えて

0

これは、ディスク上のクラスタサイズと同じ問題です。

大きなページ=>下のオーバーヘッド(小さいページ・テーブル)ページ=>グレーターオーバーヘッド

大きなページ=>もっと無駄なメモリとより多くのディスク読み取り/ページングに書い

小規模ページ

小さめ=>あなたがたは古風でページング

にあまり無駄にメモリと少ないディスクの読み取り/書き込みが(512バイトが一般的である)のページサイズは、今日、彼らはよりもはるかに小さい傾向にあったと言います。メモリが増加するにつれて、オーバーヘッドの問題(ページが増えたため)が増えている間に無駄なメモリページングの問題が減少しました。したがって、ページサイズが大きくなります。

1バイトページで何も得られません。フルディスクブロック(通常は512バイト以上)でディスクに書き込む必要があります。 1バイトのページングは​​非常に遅いでしょう。

ページ保護とページテーブルを追加します。 1バイトのページでは、使用可能なメモリよりも多くのページテーブルのオーバーヘッドがあります。

+0

も参照してください。非常に役に立ちました。ありがとう! – Joseph

関連する問題