Анализ дампов ядра, генерируемых несколькими приложениями, с помощью gdb - PullRequest
0 голосов
/ 03 апреля 2012

У меня есть дамп ядра, сгенерированный двумя приложениями -> / usr / bin / python и / usr / bin / app1.Я знаю, что дамп можно проанализировать с помощью

    gdb /path/to/app /path/to/core  

, но есть ли способ включить оба аргумента в аргумент?

Я попробовал gdb '/ usr / bin / python / usr /bin / app1 'core.xxx, но это кажется неправильным.

Есть предложения?

1 Ответ

1 голос
/ 03 апреля 2012

Я думаю, что вы не можете достичь того, чего хотите, с помощью одного вызова gdb.Но вы можете запустить gdb дважды в разных окнах терминала.Я делал это более одного раза, и он работает довольно хорошо (за исключением, конечно, того, что ваш собственный мозг мог быть слегка перегружен).(для посмертной отладки) один файл core.

И данный файл core создается путем аварийного завершения одного (не нескольких) процессов, поэтому я не понимаю ваш вопрос.

По-видимому, у вас происходит сбой при выполнении python, вероятно, дополненный вашим ошибочным кодом C.Я предлагаю иметь отлаживаемый вариант Python, возможно, установив пакет python3-all-dbg или что-то подобное, затем используйте на нем gdb.Конечно, скомпилируйте ваш код C, подключенный к Python, с включенной отладкой.Возможно, вы нарушили какой-то инвариант сборщика мусора Python.

...