Возможно ли перидокально сохранить состояние программы через дамп ядра? - PullRequest
7 голосов
/ 07 октября 2009

Я просто хочу сбросить ядро ​​без остановки программы. Это было бы существенно сериализацией целого состояния программы. Очень удобная вещь для отладки позже.

Возможно ли это в Linux?

Ответы [ 4 ]

6 голосов
/ 07 октября 2009

Я нашел простое решение:

$gcore
usage:  gcore [-o filename] pid

Распространяется с GDB.

2 голосов
/ 07 октября 2009

Не думаю, что это именно то, что вы хотите (если вы не хотите приостановить программу во время проверки или даже изменить память), но посмотрите на CryoPID .

1 голос
/ 07 октября 2009

Еще лучше !!! Gdb 7.0 имеет поддержку обратимой отладки. И это было выпущено вчера, какое совпадение: D

0 голосов
/ 07 октября 2009

должно быть выполнимо, по крайней мере / proc // smaps содержит информацию о памяти процесса, а фактическая память должна быть доступна через / dev / mem

Я думаю, что вам нужно приостановить процесс, чтобы избежать повреждения захваченной информации.

...