OSでのページングとスワッピングの違い
![ゆっくりで学ぶ基本情報技術者試験 仮想記憶管理【ゆっくり解説】](https://i.ytimg.com/vi/B2VWhhhzTX4/hqdefault.jpg)
コンテンツ
ページングとスワッピングは2つです メモリ管理戦略。 実行するには、各プロセスをメインメモリに配置する必要があります。スワップとページングは両方とも、実行のためにプロセスをメインメモリに配置します。 スワッピング プロセスをメインメモリからバックストアにスワップし、スワップをメインメモリにスワップするCPUスケジューリングアルゴリズムに追加できます。 ページング プロセスの物理アドレス空間を 不連続。以下に示す比較チャートを使用して、ページングとスワッピングの違いについて説明します。
- 比較表
- 定義
- 主な違い
- 結論
比較表
比較の基礎 | ページング | スワッピング |
---|---|---|
ベーシック | ページングにより、プロセスのメモリアドレス空間を不連続にすることができます。 | スワップにより、オペレーティングシステムで複数のプログラムを並行して実行できます。 |
柔軟性 | プロセスのページのみが移動されるため、ページングはより柔軟になります。 | スワップは、メインメモリとバックストアの間でプロセス全体を前後に移動するため、柔軟性が低くなります。 |
マルチプログラミング | ページングにより、より多くのプロセスをメインメモリに配置できます | ページングスワッピングと比較して、メインメモリに常駐するプロセスが少なくなります。 |
ページングの定義
ページングはメモリ管理スキームであり、 不連続アドレス空間 プロセスに。さて、プロセスの物理アドレスが不連続になる可能性がある場合、 外部フラグメンテーション 発生しません。
ページングは、 主記憶 呼び出される固定サイズのブロックに フレーム。の プロセスの論理メモリ と呼ばれる同じ固定サイズのブロックに分割されます ページ数。ページサイズとフレームサイズは、ハードウェアによって定義されます。知っているように、プロセスは実行のためにメインメモリに配置されます。そのため、プロセスを実行する場合、ソース(バックストア)からのプロセスのページは、メインメモリ内の利用可能なフレームにロードされます。
次に、ページングの実装方法について説明します。 CPUは、次の2つの部分で構成されるプロセスの論理アドレスを生成します ページ番号 そしてその ページオフセット。ページ番号は インデックス の中に ページテーブル.
すべてのオペレーティングシステムには、ページテーブルを格納する独自の方法があります。ほとんどのオペレーティングシステムには、プロセスごとに個別のページテーブルがあります。
スワッピングの定義
実行するには、各プロセスをメインメモリに配置する必要があります。プロセスを実行する必要があり、メインメモリが完全にいっぱいになった場合、 メモリマネージャー 交換 他のプロセスを実行する場所を空にすることによる、メインメモリからバッキングストアへのプロセス。メモリマネージャはプロセスを頻繁にスワップするため、メインメモリには常に実行可能なプロセスがあります。
パフォーマンスはスワッピングの影響を受けますが、実行には役立ちます 並列の複数のプロセス.
- ページングとスワッピングの基本的な違いは、ページングが回避されることです 外部フラグメンテーション プロセスの物理アドレス空間を不連続にすることにより、スワッピングにより マルチプログラミング.
- ページングは、プロセスのページをメインメモリとセカンダリメモリ間で転送するため、ページングは柔軟です。ただし、スワッピングでは、メインメモリとセカンダリメモリの間でプロセス全体が前後にスワップされるため、スワッピングの柔軟性は低くなります。
- ページングにより、スワッピングよりも多くのプロセスをメインメモリに配置できます。
結論:
メインメモリの非連続アドレス空間を利用するため、ページングは外部の断片化を回避します。 CPUスケジューリングアルゴリズムにスワップを追加すると、プロセスを頻繁にメインメモリに出し入れする必要があります。