2011-06-28 6 views
2

ページフォルトが発生すると、MMUが発生し、例外(割り込み)が発生します。 OSは現在のプロセスを停止し、この発生した割り込みに対処します。ページフォールトに対するOSの応答

1)これは、MMUによって生成された割り込みがレベル7にあることを意味しますか(7番目の割り込みラインが7番目のマスク不可能な68Kアーキテクチャの場合)ですか?

2)また、割り込みが発生すると、実際に重要なプロセスが進行している(仮想アドレス指定されたワードのデータを必要としない)場合はどうなりますか? OSは何をしていますか?

+0

第2の質問については、このような重要なプロセスの意味は?メモリがスワップアウトされている場合は、割り込み(PF)に続いてOSがページをスワップします。それ以外の場合は通常はバグですので、プロセスを終了させるのは当然のことです。それとも重要=リアルタイム?プロセスがページフォールトによって中断される余裕がない場合は、必要なページをスワップ不可とマークし、PFがまったく発生しないようにする必要があります(バグが原因です)。 –

答えて

2

例外は必ずしも割り込みである必要はありません。割り込みは例外ですが、割り込みではない例外があります。

  1. ページフォールト例外は例外ですが、割り込みではありません。

  2. ノンインタラプト例外は常に処理されます。ページフォールト例外は同期例外です。なぜなら、現在のコードがそれを発生させたためです。そのため、OSは適切な方法でそれを処理する必要があります(ページ違反があったコードの部分にパニックが発生する可能性があります期待できません)。

関連する問題