ページングイン Operaティングシステム(OS): とは何か、メリット、例
OSのページングとは何ですか?
ページング OS がプロセスを二次ストレージからメイン メモリにページ形式で取得できるようにするストレージ メカニズムです。 ページング方式では、メイン メモリが、フレームと呼ばれる小さな固定サイズの物理メモリ ブロックに分割されます。 メインメモリを最大限に活用し、外部の断片化を回避するには、フレームのサイズをページのサイズと同じに保つ必要があります。 ページングはデータへのアクセスを高速化するために使用され、論理的な概念です。
OSでのページングの例
たとえば、メインメモリのサイズが 16 KB、フレームサイズが 1 KB の場合。 ここでは、メイン メモリは、それぞれ 16 KB の 1 フレームのコレクションに分割されます。
システムには、それぞれ 4 KB の A1、A2、A3、A4 という 4 つの個別のプロセスがあります。ここで、すべてのプロセスはそれぞれ 1 KB のページに分割され、オペレーティング システムが XNUMX つのフレームに XNUMX ページを保存できるようになります。
プロセスの開始時には、プロセスのすべてのページが連続して保存されるように、すべてのフレームが空のままです。
この例では、A2 と A4 がしばらくして待機状態に移行することがわかります。 したがって、5 つのフレームが空になり、その空のブロックに他のページをロードできます。 サイズ 8 ページ (8 KB) のプロセス AXNUMX が準備完了キューで待機しています。
この例では、メモリ内で使用可能な非連続フレームが 5 つあり、ページングによりプロセスをさまざまな場所に保存できる柔軟性が提供されることがわかります。 これにより、A2 と A4 の代わりにプロセス AXNUMX のページをロードできるようになります。
ページング保護とは何ですか?
ページング プロセスは、有効/無効ビットと呼ばれる追加ビットの挿入の概念を使用して保護する必要があります。 ページング ページングにおけるメモリ保護は、各ページに保護ビットを関連付けることによって実現されます。 これらのビットは各ページ テーブル エントリに関連付けられ、対応するページの保護を指定します。
ページングの利点
Paging メソッドを使用する利点は次のとおりです。
- 簡単に使える メモリ管理 アルゴリズム
- 外部の断片化は必要ありません
- 同じサイズのページとページ フレーム間の交換は簡単です。
ページングの欠点
ページングの欠点/短所は次のとおりです。
- 内部断片化を引き起こす可能性がある
- ページテーブルは追加のメモリを消費します。
- マルチレベルのページングはメモリ参照のオーバーヘッドを引き起こす可能性があります。
セグメンテーションとは何ですか?
セグメンテーション方法はページングとほぼ同様に機能しますが、この XNUMX つの違いは、セグメントが可変長であるのに対し、ページング方法ではページが常に固定サイズであることだけです。
プログラムセグメントには、プログラムのメイン関数、データ構造、ユーティリティ関数などが含まれます。OSはすべてのプロセスのセグメントマップテーブルを維持します。また、空きメモリブロックのリストとそのサイズ、セグメント番号、メインメモリまたは 仮想メモリ.
セグメンテーションの利点
セグメンテーションの長所/利点は次のとおりです
- セグメント内で保護を提供する
- 複数のプロセスを参照するセグメントによる共有を実現できます。
- 内部断片化を提供しない
- セグメントテーブルはページングよりもメモリの使用量が少なくなります
セグメンテーションのデメリット
セグメンテーションの短所/欠点は次のとおりです
- セグメンテーション方式では、プロセスはメインメモリからロード/削除されます。 したがって、空きメモリ空間が小さな断片に分割され、外部断片化の問題が発生する可能性があります。
- コストのかかるメモリ管理アルゴリズム
製品概要
- ページングは、次のことを可能にするストレージ メカニズムです。 OS プロセスを二次ストレージからページの形式でメイン メモリに取得します。
- ページング プロセスは、有効/無効ビットと呼ばれる追加ビットの挿入の概念を使用して保護する必要があります。
- ページングの最大の利点は、メモリ管理アルゴリズムが使いやすいことです。
- ページングにより内部断片化が発生する可能性がある
- セグメンテーション方法はページングとほぼ同様に機能しますが、この XNUMX つの違いは、セグメントが可変長であるのに対し、ページング方法ではページが常に固定サイズであることだけです。
- 複数のプロセスを参照するセグメントによる共有を実現できます。
- セグメンテーションはコストのかかるメモリ管理アルゴリズムです