ユーザー空間とカーネル空間で null ポインターを逆参照するとどうなりますか?
私の理解では、動作はコンパイラ、アーキテクチャなどに基づいています。
ただし、一般に、仮想メモリが割り当てられたすべてのユーザー空間プログラムに対して、ページテーブルを使用して仮想アドレスを物理アドレスに変換するためにページングが使用されます。
したがって、ユーザー空間でヌルポインターを逆参照している場合、そのアドレスは無効であるため、コンテキストスイッチが発生し、カーネルでは、このヌルポインター逆参照の割り込みに基づいて「セグメンテーション違反が発生するか、ページ障害エラーが発生します」。
カーネル空間:
NULL ポインターを逆参照すると、システムがクラッシュしたり、カーネルがその呼び出しから戻れなくなる可能性があります。
私の理解は正しいですか?またはその他の情報が不足している場合は、説明してください。
参考:「CでNULLポインタを逆参照するとOSはどうなるの?」ということで理解できました。