eclipseCon 2006 March 20-23 Santa Clara Convention Center







Leave feedback

asterisk.eclipse.org

Time Travel made possible with Eclipse (temporal debugging)

Dan Bourque (Cisco Systems, Inc.)

Developer Track · Short Talk

Presentation file

Thursday, 16:42, 9 minutes | Ballroom EF   Add to your calendariCal

8
·
9
·
10
·
11
·
12
·
13
·
14
·
15
·
16
·
17
·
18
·
19
Picture

Dan Bourque

Leave feedback

Watch a video of the presentation.

We have added the ability to debug embedded applications forward and backward in time to the Eclipse/CDT platform. Each forward-stepping button has an equivalent backward-stepping counterpart, and the Debug view has a timeline control to allow time manipulations (similar to video editors).

Users can execute their programs backwards —step over, step into, step out of, instruction step, resume—, hit breakpoints in reverse, and even jump to any time in the past with a single mouse-click. Everything is accurately recreated, including stack frame, variables, memory contents, etc. that were in effect at that time. The only functionality that is compromised is the ability to change values of variables, memory or registers while in the past, since this may alter the program's flow of execution (you can't go back in time & kill your grandfather without affecting your present). Once they return to the present, they can continue debugging from there.

In order to help users identify times of interest, we have also added real- time interactive performance metrics graphs showing, among many other things, resource contentions between hardware threads. Users can visually zoom into these graphs, isolate interesting events, quickly jump back in time before these events occurred and resume debugging from there, effectively reliving the moment.

Please note, we aren't promoting a product. Our IDE is only targeting Cisco engineers anyhow. We intend to show how we've achieved this in the spirit of sharing so that others may be enticed to add this functionality to Eclipse's core, not only for embedded systems.

Short Talks provide very little time to cover such a comprehensive topic, so please look for the associated demo and our 'birds of a feather' sessions during the conference.

With over 15 years of software engineering experience, Dan is the GUI Tools team lead at Cisco Systems in San Jose, creating an embedded C/C++ IDE for microcode engineers. Besides adding temporal debugging capabilities, he is intimately knowledgeable of many facets of Eclipse/CDT/GEF, and implements innovative views for all aspects of the hardware being developed for. He created a full-featured C++ IDE from scratch back in 2000 —before the advent of Eclipse— for a startup company in Ottawa, Canada. Being a true nerd, he develops .NET applications for the Windows Mobile platform on his home-made robot in his spare time. :o) Email him at Dan.Bourque@gmail.com, or visit his website at www.DanBourque.com




Gold sponsors

IBM logo

Serena logo

HP logo

BEA logo

Accelerated Technology logo

Business Objects logo

Sybase logo

Compuware logo

Actuate logo

Silver sponsors

Scapa Technologies logo

Adobe logo

Sales Force logo

Wind River logo

Innoopract logo

Borland logo

ILOG logo

Lynux Works logo

Black Duck logo

Nokia logo

Media sponsors

Software Development logo

Embedded Computing logo

Addison-Wesley logo

Eclipse Developers journal logo

Eclipse Zone logo

Eclipse Review logo

SD Times logo

Dr. Dobb's logo

Software Test & Performance logo

ACM Queue logo

IEEE Software logo

Sys Admin logo

Eclipse Source logo

Eclipse Magazine logo