コアダンプの生成を理解しようとしています。ユーザー空間アプリケーションプロセスの競合とカーネルレベルの競合に対してコアダンプが別々に生成されますか?ulimit -c
2種類ありますか?
答え1
core
ユーザーモードプログラムがクラッシュすると、クラッシュしたときにメモリ内容のコピーを含むファイルが残ります(core
名前はコンピューティング先史時代に由来します)。以前は 核兵器)。ulimit(1)
これは、コアファイルが大きく、初心者が簡単に混同する可能性があるため、通常は無効になるコマンドによって制御されます。たとえば、実行可能ファイルとシンボルテーブルとともにデバッガを使用してコアファイルを分析し、何が起こっているのかを調べることができます。
カーネルがクラッシュすると、通常はトリガーされます。カーネルパニック。カーネルが深刻な不一致を発見した場合、カーネルが正常に何も書くと期待するのは本当に賢明ではありません。したがって、コアが生成されず、システムがクラッシュします。問題が発生したアドレスの周囲のレジスタとコードの内容がコンソールに書き込まれます。後で分析するために保存(写真撮影など)することをお勧めします。
似たような状況もあります。カーネルこんな!、カーネルが致命的でない不一致を検出した場合。この場合(カーネルパニックなど)、問題が発生したアドレスの周りのレジスタとコードの内容がコンソールに書き込まれ、書き込まれます。