|
|
|
|
|
by crabbone
1202 days ago
|
|
My guess is that you could attempt something like this by recording system calls as your program executes and then replay them in whichever order you need. You would need a lot of storage space for some programs, but in simple cases that might still be useful. So, in your example, playing the program back wouldn't really try to read from a closed socket, it would just hit debugger's database of stored system calls at a particular point and retrieve the stored response from that call. This could get weird though if the program modifies itself as it executes. Not sure what to do in such case, but maybe there's a way to deal with it in special cases, not in general... |
|
I am a co-founder of undo.io, many of our customers do this.
It's not as bad as it first sounds because the replay of the program will modify itself deterministically. (Though as always with this stuff, there are some gotchas.)