Symbian: как получить трассировку стека при панике при запуске на устройстве? - PullRequest
1 голос
/ 08 сентября 2010

Может, кто-нибудь подскажет, как получить трассировку стека в Symbian. Я испытываю панику KERN-EXEC 0, но не могу определить его происхождение. Я видел другие SO вопросы по этому поводу, например this , но есть только описание того, как решить эту проблему на эмуляторе. Но моя программа имеет дело с Wi-Fi и должна быть запущена на устройстве. Может быть, есть какой-нибудь способ отследить стек или сломаться при панике?

Ответы [ 3 ]

1 голос
/ 09 сентября 2010

У меня была та же проблема, что, ОС не дает вам никакой помощи.

То, что я сделал, что решило мою проблему и на самом деле очень помогло, - это придумать собственную реализацию трассировки стека вручную.См. Части моей версии здесь (это тот же вопрос, на который вы ссылались).

В моем ответе много плюсов и минусов.

  • Pro- вы получаете хорошую трассировку стека, которая очень помогает при отладке.
  • Con - много ручной работы для реализации и поддержки.
  • Con - может привести к снижению производительности (я установил мойтак что он будет скомпилирован только для отладочных сборок).
1 голос
/ 08 сентября 2010

KERN-EXEC 0 означает, что вы используете плохой дескриптор, поэтому проверьте все ваши RClasses.

Вы не можете отлаживать сбои системы на рабочем устройстве.Если вы можете создать собственное ПЗУ для вашего устройства, то вы можете включить расширения ядра «exmondebug.dll» и «exmoncommon.dll», теперь, когда устройство выходит из строя, вы попадете в монитор отладки.Отсюда вы можете ввести пароль «замена», выгрузить все системные стеки и т. Д. (Введите help для информации).

Если у вас нет доступа к оборудованию разработчика, вы можете запустить собственный Symbian ^ 2и образы Symbian ^ 3 ROM на QEMU с базовым портом Syborg , я не думаю, что он поддерживает Wi-Fi, но есть драйвер Ethernet.

0 голосов
/ 09 сентября 2010

Разве ваши журналы не дают вам подсказку?Добавьте больше журналов вокруг места, где он падает, или закомментируйте некоторые блоки, чтобы увидеть, происходит ли сбой в них.

...