DB 今日のお勉強
「実記憶管理」
プログラムの実行⇒主記憶装置に読み込まれる
プログラムに主記憶装置を割り当てる方法には、
①固定区画方式:主記憶装置を固定長の区画に分割
→プログラムが必要をする領域よりも割り当てられる区画が大きいと、
区画内に未使用の領域が残る(内部フラグメンテーション)
→使用していくうちに、十分な空き領域が確保できず、未割り当ての小さな領域が
断片的に発生する(外部フラグメンテーション)
②可変区画方式:実行するプログラムの大きさに合わせて主記憶装置を割り当てる
→内部フラグメンテーションは発生しないが、外部フラグメンテーションは発生してしまう
ガーベジコレクション:フラグメンテーションを解消し、利用できる連続した領域を確保する処理
「仮想記憶管理」
主記憶装置の割付け(マッピング)方式で3つに分かれる
①ページング方式:仮想アドレス空間を一定長のページに分割、このページを主記憶に割り付ける
②セグメンテーション方式:プログラムを意味のある単位(セグメント)に分割、セグメント単位で主記憶に割り付ける
③セグメントページ方式:可変のセグメントをさらに一定長のセグメントに分割し、主記憶に割り付ける
(アドレス変換をセグメントとページの2段階で実施する必要がある為、アドレス変換機構が複雑になる)
ページフォルト:命令実行時に主記憶装置に必要となるページが割付られていない状況
(ページイン/ページアウト)
ページ置き換えアルゴリズム : FIFO, LRU(最も長い間参照されていないページをページアウト)
スラッシング:ページフォルトが発生し、ページング処理の為にシステム全体の処理能力が低下した状態
→対策は「主記憶装置を増強」「プログラムの多重度を下げる」「ページサイズを大きくする」