不正アクセスの扱いと無効ページフォールト
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/12/25 15:27 UTC 版)
「ページフォールト」の記事における「不正アクセスの扱いと無効ページフォールト」の解説
不正アクセスと無効ページフォールトはセグメンテーション違反やバスエラーを起こし、OSの環境によってはプログラムをクラッシュさせたり、コアダンプを生じさせたりする。その多くはソフトウェアのバグだが、オーバークロックなどが原因でハードウェアが誤動作し、ポインタの中身が壊れて発生することもある。 WindowsやUnix系のOSはそれぞれ、ページフォールトに起因するエラーを報告する独自の機構を備えている。Windowsは構造化例外ハンドリングを使ってページフォールトに起因する無効アクセスをセグメンテーション違反として通知する。Unix系では一般にシグナル機構を使い(SIGSEGVなど)、プログラムにエラー状態を通知する。 プログラムがエラー通知を受け取らない場合、OSはデフォルトの動作を行う。一般的には問題を起こした動作中プロセスを終了させ、ユーザーに対してそのプログラムが誤動作したことを通知する。最近のWindowsでは単に "this program must close" のようなメッセージだけを示す(熟練したユーザーやプログラマはデバッガを使って詳細情報を集めることもできる)。最近のWindowsはまた、ミニダンプ(原理的にはコアダンプと同じ)を書き出すことができ、クラッシュしたプロセスの状態を残すことができる。Unix系OSではユーザーに対しては "segmentation violation" や "bus error" といったエラーメッセージを示し、同時にコアダンプを残すこともある。
※この「不正アクセスの扱いと無効ページフォールト」の解説は、「ページフォールト」の解説の一部です。
「不正アクセスの扱いと無効ページフォールト」を含む「ページフォールト」の記事については、「ページフォールト」の概要を参照ください。
- 不正アクセスの扱いと無効ページフォールトのページへのリンク