Open Source Omniscient Debugger

Bil Lewis, professor at Tufts describes Omniscient Debugging in Dr Dobbs’ Journal (registration required):

The term “omniscient debugging” describes the concept that debuggers should know everything about the run of a program, that they should remember every state change, and be able to present to you the value of any variable at any point in time. Essentially, omniscient debugging means that you can go backwards in time.

Bil has made available an open-source omniscient debugger called ODB under the GPL license. In his Debugging Backwards in Time (pdf), omniscient debugging is interesting because:

  • Debugging is easier if you can go backwards
  • Elimiates guessing where to put breakpoints
  • Makes looking at unknown code much easier
  • All data is serializable and analyzable remotely.

Other Examples are:

Update: I’ve contacted Tom Malcolmson about his PySpy. Development has not kept up past Python 2.1, but he has given me permission to host PySpy. It currently lives here, but will be moved to a new home soon.

Bookmark and Share

You should follow me on twitter here

Leave a Reply