Apple のクラッシュ レポートには、クラッシュ レポートを提供するException Type
との 2 つの行がありException Codes
ます。これらすべてのコードが実際に何を意味するか知っている人はいますか?
次のような自明なものがいくつかありますKERN_INVALID_ADDRESS
。
たとえば、これはNULL ポインター逆参照です。
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000
ポインター演算でエラーを起こした場合、非常によく似た結果になります。
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00007fff50399000
しかし、これらの例外コードはたくさんあります! たとえば、これは私が最近遭遇したもので、それが何を意味するのかわかりません (アドレスは大きなメモリ マップ ファイルを指しています)。
Exception Type: EXC_BAD_ACCESS (SIGBUS)
Exception Codes: 0x000000000000000a, 0x0000000137676004
クラッシュ レポートについて私が見つけたのはこの技術情報だけでしたが、例外コードの解釈方法に関する詳細なリファレンスはありませんでした。