Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
  • ベストアンサー

仮想メモリ

16ビットの仮想アドレス空間を持つ場合のページング処理について考える。 ページテーブルサイズを8とする。 主記憶の実ページ(物理ページ)の大きさを求めよ。 という問題がわかりません。 仮想メモリについて理解できてきないのだと考え色々調べましたがよくわからなかったです。 仮想アドレス空間と主記憶上の実ページの関係が上手くイメージできないです。 どなたか答えと解説をお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ninoue
  • ベストアンサー率52% (1288/2437)
回答No.2

ユーザーのアドレス空間は16bit==64KB ページテーブルサイズ==8, 1page=64KB/8=8KB == 主記憶の実ページ(物理ページ) のシステムとして考えれば良いのではないでしょうか。 物理主記憶サイズが256, 512KB,1MB等と少ない昔のシステムでは4KB/page等のシステムもありましたが、問題に何も制限条件等が書かれていませんので、物理ページ==8KBの答で十分でしょう。 仮想記憶アドレスの上位3bit==page no, 下位13bit==page内オフセットの単段(単純)仮想記憶システムに相当します。 32KB/48KB等のプログラム(code+data+stack)に対して、OSは1MB(128page)の物理メモリエリアから4/6pageの空きエリアを割り当て、その物理ページ番号をページテーブルに書き込みます。 残りの32KB/16KB=4/2ページにはinvalidマークを書き込みます。 Wikipedia:ページテーブルの多段ページテーブルの場合や、ページのスワップイン/スワップアウトを行うような仮想メモリシステムではもっと複雑な制御が行われます。

すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.1

何か、言葉の情報が足りていないように思います。 16ビットのページが8個ってことですか?? なら普通に、 64<<3=512KBだと思いますが。 何かしら、情報が足りていないように感じました。 <かなり確信から遠い回答です。私のほう。

すると、全ての回答が全文表示されます。

関連するQ&A