On Fri, Feb 25, 2011 at 11:20 AM, Pavel Dovgaluk <pavel.dovga...@ispras.ru> wrote: > >> On 02/23/2011 05:50 PM, Anthony Liguori wrote: >> >> I still don't see. What would you do with thousands of checkpoints? >> > >> > >> > For reverse debugging, if you store checkpoints at a rate of save, >> > every 10ms, and then degrade to storing every 100ms after 1 second, >> > etc. you'll have quite a large number of snapshots pretty quickly. >> > The idea of snapshotting with reverse debugging is that instead of >> > undoing every instruction, you can revert to the snapshot before, and >> > then replay the instruction stream until you get to the desired point >> > in time. >> >> You cannot replay the instruction stream since inputs (interrupts, rdtsc >> or other timers, I/O) will be different. You need Kemari for this. > > I've created the technology for replaying instruction stream and all of the > inputs. This technology is similar to deterministic replay in VMWare. > Now I need something to save machine state in many checkpoints to > implement reverse debugging. > I think COW2 may be useful for it (or I should create something like this).
Or the BTRFS_IOC_CLONE ioctl on the btrfs filesystem. You can copy-on-write clone a file using it. Stefan