1

これはリアルタイム MMO クライアントで、ランダムな時点で 0 にジャンプしてクラッシュし、スタック フレームが読み取れません。クラッシュ レポーター (および GDB) は、スレッド 0 がクラッシュしたことを報告します。

XC_BAD_ACCESS (SIGBUS)
KERN_PROTECTION_FAILURE at 0x0000000000000000

srr0=lr=exception address=0

このエラーが発生した場所を特定するにはどうすればよいですか?

4

1 に答える 1

0

スタック ポインタ ( r1) とリンク レジスタが破棄されている場合、見栄えがよくありません。ただし、一部の他のレジスタにはまだフレーム ポインタの値が含まれている可能性がありますr0

それ以外に、引き出すことができるいくつかのトリックがあります-アドレスのプロセスのアドレス空間に何もマップされていないと仮定すると0x0(これはEXEC_BAD_ACCESSエラーの場合のようです)、ページ0をマップする単純なプリロードライブラリを作成できます。これにより、にブレークポイントを追加できます0x0。これにより、何が起こっているかについてより多くの情報が得られる場合があります。

于 2009-06-29T21:33:34.003 に答える