応用情報技術者 2019年 秋期 午前2 問18
問題文
ページング方式の仮想記憶において、主記憶に存在しないページをアクセスした場合の処理や状態の順番として、適切なものはどれか。ここで、現在主記憶には、空きページはないものとする。
選択肢
ア:置換え対象ページの決定 → ページイン → ページフォールト → ページアウト
イ:置換え対象ページの決定 → ページフォールト → ページアウト → ページイン
ウ:ページフォールト → 置換え対象ページの決定 → ページアウト → ページイン(正解)
エ:ページフォールト → 置換え対象ページの決定 → ページイン → ページアウト
ページング方式の仮想記憶におけるページフォールト処理の順序【午前2 解説】
要点まとめ
- 結論:ページフォールト発生後に置換え対象ページを決定し、ページアウトしてからページインするのが正しい順序です。
- 根拠:ページフォールトはアクセスしたページが主記憶にないことを示し、空きページがない場合は置換えが必要です。
- 差がつくポイント:ページアウトとページインの順序を誤ると、データの破損や処理の遅延が発生するため正確な理解が重要です。
正解の理由
ウの順序は、まずページフォールトが発生したことを検知し、次に置換え対象のページを決定します。空きページがないため、選ばれたページをページアウト(ディスクに書き戻し)し、その後に必要なページをページイン(ディスクから主記憶へ読み込み)します。この流れが仮想記憶管理の基本的な処理手順に合致しています。
よくある誤解
ページフォールトが起きる前に置換え対象を決めると考えたり、ページアウトより先にページインを行うと誤解されがちです。これでは正しいメモリ管理ができません。
解法ステップ
- アクセスしたページが主記憶に存在しないことを検知し、ページフォールトが発生。
- 空きページがないため、置換え対象のページを決定。
- 決定したページをページアウト(ディスクへ書き戻し)。
- 必要なページをページイン(ディスクから主記憶へ読み込み)。
- 処理を再開し、アクセスを完了。
選択肢別の誤答解説
- ア: ページフォールトの検知が後回しで誤り。ページアウト前にページフォールトが発生している必要がある。
- イ: ページフォールト後にページアウトを先に行うが、置換え対象の決定がページアウト前に必要。
- ウ: 正解。ページフォールト→置換え対象決定→ページアウト→ページインの正しい順序。
- エ: ページインをページアウトより先に行うのは誤り。空きページがないためページアウトが先。
補足コラム
ページング方式の仮想記憶は、主記憶の効率的利用を目的とし、ページフォールト時の処理が性能に大きく影響します。ページアウトは書き込み遅延が大きいため、置換えアルゴリズムの選択も重要です。
FAQ
Q: ページフォールトとは何ですか?
A: アクセスしたページが主記憶に存在しない状態で、OSがページを補充する必要があることを指します。
A: アクセスしたページが主記憶に存在しない状態で、OSがページを補充する必要があることを指します。
Q: ページアウトとページインの違いは?
A: ページアウトは主記憶のページをディスクに書き戻す処理、ページインはディスクから主記憶にページを読み込む処理です。
A: ページアウトは主記憶のページをディスクに書き戻す処理、ページインはディスクから主記憶にページを読み込む処理です。
関連キーワード: ページフォールト、ページアウト、ページイン、仮想記憶、ページ置換え、メモリ管理

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

