VMware Record and Play

VMware has just added a feature to its Workstation product that will forever change the way software companies fix bugs in their products. Called “VM Record/Replay”, developers can now replay the execution of software captured in a Virtual Machine. Having worked in Tech. Support for more than 12 years I can tell you the worst kind of bug report we ever see is the non-reproducible bug. You know, your customer can make it happen, but you cannot, no matter how hard you try. It frustrates everyone, eats up enormous amounts of time and resources and does nothing to improve the product.

VMware Workstation 6 now includes the ability to capture complete execution behavior. As you all know, the complete execution path of the software can be very different from one execution of software to the next. Add multi-threaded programs into the mix and you have a situation where no two executions of software are ever exactly the same. Here’s a short description taken from The Amazing VM Record/Replay Feature in VMware Workstation 6

“When you enable the Record/Replay feature, VMware Workstation immediately takes a snapshot of the full VM state, continues guest software execution, and begins tracking its execution behavior. We’re not talking about a movie of what’s on the screen, but the full system behavior including all CPU and device activity. It notes the exact point in time when every device interrupt or other asynchronous event occurs and records this information to a compressed log file until you tell it to stop. It actually has to save a few other things such as the contents of all incoming networking packets, too.”

VMware Record and Play

This is break-through stuff for technical support people and software developers. Bravo!

4 thoughts on “VMware Record and Play”

  1. Record/Replay is, indeed, an incredible boon to developers. But what else can be done with this information? If we are capturing the full execution steam (memory contents, CPU operations, network packets, all of it), then couldn’t we replay this on another host? How’s that for a DR scenario? In my mind, the possibilities are endless.

  2. a big problem when debugging an exception is needing to rewind
    and see what happens leading up to the problem

    this technology could enable a debugger with a rewind facility

Comments are closed.