仮想記憶は『主記憶以上のアドレス空間』を補助記憶で実現する技術。OS の中核機能です。
仮想記憶 は、各プロセスに独立した広大なアドレス空間を提供し、主記憶と補助記憶を組み合わせて実現します。
ページング が代表的な実装方式。
ページングって何?
仮想アドレス空間を固定長 (例: 4KB) のページに分割し、物理メモリのフレームに対応付ける方式よ。
テーブル (ページテーブル) で仮想→物理のマッピングを管理するの。
ページフォールト って…?
アクセスしたページが主記憶にない場合に、補助記憶から読み込むための割込みのことです。
これが頻発してシステムが極端に遅くなる現象を スラッシング と呼びます。
頻繁な変換を高速化するために、TLB (Translation Lookaside Buffer) というキャッシュを置いているのよ。
応用情報では、FIFO・LRU・LFU・Optimal などのページ置換アルゴリズムを比較する問題が出るわ。
確認クイズ
仮想記憶において、頻繁にページフォールトが発生し、システムが極端に遅くなる現象を何と呼ぶか。
- フラグメンテーション
- スラッシング
- リソースリーク
- メモリリーク
こたえを見る
正解: 2. スラッシング
スラッシングは、主記憶不足によりページの読み書きが頻発し、本来の処理が進まない現象。多重度を下げる、メモリを増設する、ワーキングセットを減らすなどの対策があります。