コアファイルについていくつかの質問があります。
1)コアファイルとは何ですか? 2) それが置かれるところ。 3)コアパイの用途は何ですか? 4) Cプログラムのコンパイル時にコアファイルを生成する方法。 5)コアファイルとコアダンプの違いは何ですか?
答え1
1)コアファイルとは何ですか?
コアダンプを含むファイル。特定の異常なプログラムのシャットダウン(不正なコマンドの実行など)により、デフォルトでコアダンプが生成されます。
2) それが置かれるところ。
通常、プロセスが生成された原因は現在ディレクトリから呼び出されたファイルですが、core
一部のオペレーティングシステム(Linuxなど)では、他のファイルや別の文書として保存されるように再構成できます。プログラムにパイプされます。 Linuxでは、/proc/sys/kernel/core_pattern
コアダンプが配置されるファイル名を見つけます。
3)コアパイの用途は何ですか?
コアダンプはgdbなどのデバッガにロードできます。これにより、プログラムが終了したかのようにプログラムの状態を確認できます。これにより、開発者はプログラムの競合の原因をより簡単に特定できます。
4) Cプログラムのコンパイル時にコアファイルを生成する方法。
これは奇妙な質問です。私の考えでは、Cプログラムをコンパイルするときにコアダンプを生成するには、コンパイラがクラッシュする必要があると答えたようです!たとえば、コンパイラでバグを見つけて活用できます。あるいは、デフォルトでコアダンプでプログラムを強制終了してSIGQUIT
送信することもできます。Ctrl^
5)コアファイルとコアダンプの違いは何ですか?
次のように定義できるようです。コアファイルは、コアダンプを含むファイルです。しかし、一般的に、ほとんどの人はこの用語を同じ意味で使うと思います。