2-03記憶管理
記憶管理 プログラム記憶方式
プログラムを主記憶に読み込んでおき、CPUが順次読みだし実行する方式です。主記憶の容量には限りがあるため,主記憶を効率よく管理することを記憶管理と言う。
実記憶管理
区画方式
主記憶を幾つかの区画に分割して、プログラムに割り当てる方式
固定区画方式
主記憶をあらかじめ決まった大きさの区画に分割する。各プログラムは格納できる大きさの区画に配置される。使用効率は悪いが,処理時間は一定で速い
可変区画方式
主記憶をプログラムが必要とする大きさの区画に割り当てる。主記憶の使用効率は良いが,処理時間は不定で遅い
フラグメンテーション(fragmentation碎片化)
OSが主記憶の領域の獲得と解放を繰り返していくと,細切れの未使用領域が発生する現象
メモリコンパクション (memory compaction)
フラグメンテーションを解決するために、細切れの未使用領域を連続した一つの領域にまとめ、再び利用可能にする
スワッピング方式 (swapping)
実行中のプログラムのうち優先度の低いプログラムを一時中断して磁
気ディスクに退避(スワップアウト)して,優先度の高いプログラムを主記憶に配置する(スワップイン)方式
オーバレイ方式(overlay)
あらかじめプログラムを同時に実行しない排他的な幾つかの単位
(セグメント)に分割しておき,実行時に必要な部分だけを主記憶に配置して実行する方式です。
将一个大的程序分成若干个小的模块,每次只将需要执行的模块加载到内存中,其他模块则存放在外部存储器中,等到需要时再将它们替换到内存中,从而实现内存空间的节省
仮想記憶方式
プログラムを仮想記憶空間に格納しておき,実行時に必要なプログラムやデータを動的に実記憶に配置して実行する方式,主記憶の容量よりも大きなメモリを必要とするプログラムも実行できるようになる。
ページング方式(页面置换)
主記憶とプログラムを固定長(ページという)に分割し,このページ単位で管理する方式
大きなプログラムを実行するときも,ごく短い時間を見れば,必要なのは一部のみであるこの方式では,実行するページが主記憶に存在しないときは,ページフォルトと呼ばれる割込みが発生し,不要なページを実記憶から補助記憶に追い出し(ページアウトという),必要なページを補助記憶から主記憶に配置します(ページインという)
ページフォルトが多発すると,処理効率が急激に低下する現象(スラッシング)
ページ置換えアルゴリズム(页面置换算法)
ページング方式で,不要なページを決定する主な方法
FIFO方式(First-In First-Out)
最も古くから主記憶に存在するページを置
き換える
LRU方式(Least Recently Used)
最後に参照されてから最も経過時間が長いページを置き換える
LFU方式(Least Frequently Used)
参照回数が最も少ないページを置き換える