この記事では、オペレーティング システムでのページ フォールトの処理とその手順について説明します。
オペレーティング システムのページ フォールトとは何ですか?
ページフォールトは、次のように支配的です。 エラー 。ページ フォールトは、プログラムが物理メモリ (メイン メモリ) に存在しないメモリにアクセスしようとすると発生します。この障害により、オペレーティング システムがすべてのデータを仮想メモリ管理にトレースし、二次メモリからハードディスクなどの主メモリに再配置するように指定されます。
ページ フォールト トラップは、要求されたページがメモリにロードされない場合に発生します。ページ フォールトは主に例外を引き起こします。この例外は、オペレーティング システムに例外を取得するよう通知するために使用されます。 「ページ」 操作を続行するには仮想メモリから削除します。すべてのデータが物理メモリに配置されると、プログラムは通常の動作を再開します。ページ フォールト プロセスはバックグラウンドで発生するため、ユーザーはそれに気づきません。
- コンピューターのハードウェアはカーネルまで追跡し、プログラム カウンターはスタックに保存されることがよくあります。 CPU レジスタは、命令の現在の状態に関する情報を保持します。
- アセンブリ プログラムが開始され、オペレーティング システムによる破壊を防ぐために汎用レジスタおよびその他の揮発性データが保存されます。
ページフォルトの処理
ページ フォールトは、無効としてマークされているページにアクセスすると発生します。ページング ハードウェアは、ページ テーブル全体でアドレスを変換するときに無効なビットが設定されていることを認識し、オペレーティング システムのトラップが発生します。このトラップは主に、OS が必要なページをメモリにロードできないことが原因で発生します。
リナックスメイク
ここで、OS でのページ フォールト処理の手順を理解しましょう。
- まず、このプロセスの内部テーブルで、参照が有効なメモリ アクセスか無効なメモリ アクセスかを評価します。
- 参照が無効になると、システム プロセスが終了します。それ以外の場合、ページはページインされます。
- その後、空きフレーム リストによってシステム内の空きフレームが検索されます。
- これで、ディスクから必要なページを取得するようにディスク操作がスケジュールされます。
- I/O 操作が完了すると、プロセスのページ テーブルが新しいフレーム番号で更新され、無効なビットが変更されます。これで、有効なページ参照になります。
- ページフォルトが見つかった場合は、これらの手順を最初からやり直してください。
ページフォールトの用語
オペレーティング システムにはさまざまなページ フォールト用語があります。ページ フォールトの用語の一部は次のとおりです。
1. ページヒット
CPU がメイン メモリから必要なページを取得しようとしたときに、そのページがメイン メモリに存在する場合 メインメモリ(RAM) 、と呼ばれます。 「ページヒット」 。
2. ページミス
必要なページがサイトに存在しない場合は、 メインメモリ(RAM) 、として知られています 「ページミス」 。
Linuxフォルダーの名前を変更する
3. ページフォルト時間
二次メモリからページを取得し、必要なページをロードした後にメインメモリからそれを回復するのにかかる時間は、 「ページフォールト時間」 。
4. ページフォールト遅延
スレッドがメモリ内でページ フォールトを見つける速度は、 「ページフォールト率」 。ページ フォールト率は 1 秒ごとに測定されます。
セレンチュートリアルJava
5. ハードページフォルト
必要なページがハードディスクのページ ファイルに存在する場合、それはページ ファイルと呼ばれます。 「ハードページフォルト」 。
6. ソフトページフォールト
必要なページがハードディスク上になく、メモリ内の別の場所にある場合、そのページは「ページ」と呼ばれます。 「ソフトページフォルト」 。
7. マイナーページフォールト
ラドヤード・キプリングの言葉を言い換えると
プロセスがデータを必要とし、そのデータがメモリ内に存在するが、同時に別のプロセスに割り当てられている場合、そのデータは「 「マイナーページフォールト」 。