1

Symbian でスタック トレースを取得する方法について、ヒントを教えてください。KERN-EXEC 0 パニックが発生していますが、原因がわかりません。thisのような、これに関する他のSOの質問を見てきましたが、エミュレータでこの問題を解決する方法の説明しかありません。しかし、私のプログラムは Wi-Fi を扱っており、デバイス上で実行する必要があります。スタックをトレースしたり、パニックで中断したりする方法はあるのでしょうか?

4

3 に答える 3

1

KERN-EXEC 0 は、不適切なハンドルを使用していることを意味するため、すべての RClasses を確認してください。

運用デバイスでシステム クラッシュをデバッグすることはできません。デバイス用のカスタム ROM をビルドできる場合は、カーネル拡張機能「exmondebug.dll」および「exmoncommon.dll」を含めることができます。デバイスがクラッシュすると、デバッグ モニターにドロップされます。ここから、パスワード「replacement」を入力して、すべてのシステム スタックなどをダンプできます (情報については、help と入力してください)。

開発者のハードウェアにアクセスできない場合は、Syborg ベースポートを使用して QEMU でカスタムの Symbian^2 および Symbian^3 ROM イメージを実行できます。Wi -Fi サポートはないと思いますが、イーサネット ドライバーがあります。

于 2010-09-08T15:53:58.617 に答える
1

私は同じ問題を抱えていました.OSはあなたに何の助けも与えません.

私がしたことは、私の問題を解決し、実際に多くの助けになりました。それは、独自の手動スタック トレース実装を考え出すことです。ここで私のバージョンの一部を参照してください(たまたまリンク先の質問と同じです)。

私の答えには、多くの長所と短所があります。

  • プロ - デバッグに役立つ優れたスタック トレースが得られます。
  • 短所 - 実装および維持するための多くの手作業。
  • 短所 - パフォーマンスが低下する可能性があります (デバッグ ビルドのみでコンパイルされるように設定しました)。
于 2010-09-08T23:19:47.130 に答える
0

ログがヒントになりませんか? クラッシュした場所にさらにログを追加するか、いくつかのブロックをコメントアウトして、クラッシュが発生したかどうかを確認します。

于 2010-09-09T08:04:19.380 に答える