I just want to dump core without stopping the program. This would be essentialy serializing a whole state of the program. A very convenient thing for debugging later.
Is it possible under linux?
I just want to dump core without stopping the program. This would be essentialy serializing a whole state of the program. A very convenient thing for debugging later.
Is it possible under linux?
should be doable, at least /proc//smaps contains information of the process memory and the actual memory should be accessible via /dev/mem
I think you need to suspend the process to avoid corruption of the captured info, though.
What you're looking for is a "time travel debugger" which can travel back in time to the previous state of the program you're debugging.
There is one commercial product for Linux called UndoDB.
I found simple solution:
$gcore
usage: gcore [-o filename] pid
It is distributed with gdb.
Even better!!! Gdb 7.0 have support for reversible debugging. And it was released yesterday, what a coincidence :D