Live Recorder: http://www.undo-software.com
Record a process on Linux and save an exact copy of the program's execution; replay it later on a different machine, and step backwards and forwards through the recording at the source level to figure out where it went wrong.
There are a few main things that make this possible:
- lightweight copy-on-write process snapshots
- re-executing (rather than recording) code we know to be deterministic
- a lot of time spent on handling corner cases to create a mature product