ホームページ  >  記事  >  ウェブフロントエンド  >  メモリ管理ページングとページフォールト計算_html/css_WEB-ITnose

メモリ管理ページングとページフォールト計算_html/css_WEB-ITnose

WBOY
WBOYオリジナル
2016-06-24 12:05:511412ブラウズ

1. 欠落ページとは何ですか?

端的に言うと、ページフォールトはすべてのメモリブロックが最初は空であると定義されているため、初めて使用されるページはページフォールトを生成します、つまり、入力されるページ番号がメモリに存在しない場合、ページフォールトが発生します。これを理解すると、ページ欠落計算の問題を解決することが容易になります。

2. 先入れ先出しスケジューリング アルゴリズム (FIFO)

このスケジューリング アルゴリズムは、メイン メモリに入力された最新のページを常に削除します。このスケジューリング アルゴリズムは非常に単純で、ページ フォルトが発生するたびに、ページがメイン メモリにロードされる順序でページ番号キューに配置され、最も早く入ったページが削除されます。

例: たとえば、順番にアクセスされるページ番号は: 0 1 2 3 2 1 3 2 5 2 3 6 2 1 4 2. FIFO スケジューリングが使用される場合、使用できるメイン メモリは 3 つだけです。スケジューリング プロセスをシミュレートして、ページ フォルト割り込みの数を計算してください。

0が入るとページフォルト割り込みが発生(1回) この時のメモリ内のページ番号は 0
1が入るとページフォルト割り込みが発生(1回) この時のメモリ内のページ番号です。 :01
2が入る、ページフォルトが発生 ページ割り込み(1回) このときメモリ内のページ番号:012
3が入る、0が消える、ページフォルト割り込みが発生(1回)、3が位置を置き換える0、この時点のメモリ内のページ番号: 1233
2 が入ります。ページ番号 2 が既にメモリ内に存在するため、ページ欠落割り込みはありません。メモリ内のページ番号はまだです: 123
1 が入ります。はメモリ内のページ番号 1 であり、ページ欠落割り込みはありません。このとき、メモリ内のページ番号は次のとおりです。 123
3、上記と同様に、ページ欠落割り込みはありません、メモリ内のページ番号を入力します。は: 123
A入力します。上記と同じです。ページ欠落割り込みはありません。メモリ内のページ番号は次のとおりです: 123
5、この時点では 312 を入力します。 最も長く滞在したものは 1 です。したがって、5 は 1 を置き換えます、ページフォルト割り込みが発生します (1 回)、メモリ内のページ番号は: 235
2 が入る、ページフォルト割り込みはありません、メモリ内のページ番号は: 235
6が入る、ページ欠落割り込みが発生します (1時間)、削除されたページはNo.2、メモリ内のページ番号は356
6 Enter、ページ欠落割り込み発生(1回)、削除されたページはNo.3、メモリ内のページ番号は562
1が入る、ページフォルト割り込みが発生(1回)、削除されたページ番号は5、メモリ内のページ番号は621
4が入る、ページフォルト割り込みが発生(1回)、削除されたページ番号は6 No .、メモリ内のページ番号は 214
2 が入力され、ページフォルト割り込みはありません、メモリ内のページ番号は 214

したがって、先入れ先出しスケジューリング アルゴリズムが使用される場合、合計8 回のページフォルト割り込みが発生し、メモリのシミュレーション状況は次のとおりです。


3122235622 11222 223335621133 は ではない は は ではない ではない は は

1.

遅刻

2

1

ページがありません

はい

はい

ではない

ではない

ではありません


*赤い数字はメモリに入力された最新のページ番号です
先入れ先出しシミュレーションプロセスでは、次の特性を見つけるのは難しくありません:
1.最初は間違いなくページが失われます
2. いいえ、ページフォルトが発生した場合、連続した列は同じです
3. 削除されたページは、最も長くメモリに残っていたものです。
3. 最近未使用のスケジューリング アルゴリズム (LRU)

最近未使用のスケジューリング アルゴリズムでは次のことが考慮されます: 最近頻繁に使用されたページはすぐにアクセスされる可能性があるため、呼び出すことはできません。逆に、過去の期間にアクセスされていないページがある場合は、近い将来にアクセスされなくなる可能性があります。したがって、新しいページをロードする必要がある場合は、最近の期間で最も長い間使用されていないページを選択する必要があります。


上記の例を引き続き使用し、LRU スケジューリングを使用すると、

最初に 0 が入り、ページが欠落しています (1 回) このとき、メモリ内のページ番号は使用頻度の順に 0 になります
。 1が入り、ページ欠落(1回)、このときメモリ内のページ番号は使用頻度順に01
2が入り、ページ欠落(1回)。メモリ内の番号は使用頻度順です: 012
3入り、ページ欠落(1回)、最も長く使用されていないページ番号は0で3に置き換えられます。メモリ内のページ番号は使用頻度順:123
<2が入ります。 この時点ではページ不足はありません。メモリ内のページ番号は使用頻度順に:133
<1が入ります。 、ページ不足はありません、メモリ内のページ番号の使用頻度の順序は次のとおりです: 321
3 Enter、ページ不足はありません、メモリ内のページ番号の使用頻度の順序は次のとおりです: 213
2 Enter、ページがありません不足、現時点ではメモリ内のページ番号使用頻度順:132
5が入り、ページ欠落(1回)、最も長く使用されていないページ番号が1番となり、削除されます。このとき、メモリ内のページ番号の使用頻度順序は次のとおりです: 325
2 Enter、ページの欠落はありません、メモリ内のページ番号の使用頻度の順序は次のとおりです: 352
3 Enter、ページの欠落はありません、ページメモリ内の番号使用頻度シーケンスは: 523
6 入力、ページ欠落 (1 回) 、この時点で、メモリ内のページ番号使用頻度の順序: 236
2 が入力、この時点ではページ欠落はありませんメモリ内のページ番号使用頻度順序: 362
1入り、ページ欠落(1回)、最長未使用ページ ページ番号は3です。 このときメモリ内のページ番号使用頻度の順位は: 621
4エントリ、ページ欠落(1回)、最も長期間使用されていないページ番号は6です。このとき、メモリ内のページ番号使用頻度順は、214
2が入り、ページがありません。このとき、メモリ内のページ番号使用頻度の順位は、142

したがって、長期間使用されていない最新のスケジューリングアルゴリズムを使用すると、不足しているページ数は8回

となります。メモリ内のスケジュール シミュレーションは次の表に示されています:

01232 132523 6214 2長い時間 00 01132133523 621中 11232 13252 36214最後2どうかは

Frequency

ダメ

中古

ページがありません

はい

ではない

ではない

ではない

不是

不是

不是

ではありません


四、小结

  多拿笔画画~~~


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。