{"data":{"id":"10.48550/arxiv.cs/0310016","type":"dois","attributes":{"doi":"10.48550/arxiv.cs/0310016","prefix":"10.48550","suffix":"arxiv.cs/0310016","identifiers":[{"identifier":"cs/0310016","identifierType":"arXiv"}],"alternateIdentifiers":[{"alternateIdentifierType":"arXiv","alternateIdentifier":"cs/0310016"}],"creators":[{"name":"Lewis, Bil","nameType":"Personal","givenName":"Bil","familyName":"Lewis","affiliation":[],"nameIdentifiers":[]}],"titles":[{"title":"Debugging Backwards in Time"}],"publisher":"arXiv","container":{},"publicationYear":2003,"subjects":[{"lang":"en","subject":"Software Engineering (cs.SE)","subjectScheme":"arXiv"},{"subject":"FOS: Computer and information sciences","subjectScheme":"Fields of Science and Technology (FOS)"},{"subject":"FOS: Computer and information sciences","schemeUri":"http://www.oecd.org/science/inno/38235147.pdf","subjectScheme":"Fields of Science and Technology (FOS)"},{"lang":"en","subject":"D.2.5","subjectScheme":"ACM"}],"contributors":[],"dates":[{"date":"2003-10-09T14:51:57Z","dateType":"Submitted","dateInformation":"v1"},{"date":"2009-12-01T02:42:33Z","dateType":"Updated","dateInformation":"v1"},{"date":"2003-10","dateType":"Available","dateInformation":"v1"},{"date":"2003","dateType":"Issued"}],"language":null,"types":{"ris":"GEN","bibtex":"misc","citeproc":"article","schemaOrg":"CreativeWork","resourceType":"Article","resourceTypeGeneral":"Preprint"},"relatedIdentifiers":[],"relatedItems":[],"sizes":[],"formats":[],"version":"1","rightsList":[{"rights":"Assumed arXiv.org perpetual, non-exclusive license to distribute this article for submissions made before January 2004","rightsUri":"http://arxiv.org/licenses/assumed-1991-2003/"}],"descriptions":[{"description":"By recording every state change in the run of a program, it is possible to present the programmer every bit of information that might be desired. Essentially, it becomes possible to debug the program by going ``backwards in time,'' vastly simplifying the process of debugging. An implementation of this idea, the ``Omniscient Debugger,'' is used to demonstrate its viability and has been used successfully on a number of large programs. Integration with an event analysis engine for searching and control is presented. Several small-scale user studies provide encouraging results. Finally performance issues and implementation are discussed along with possible optimizations. This paper makes three contributions of interest: the concept and technique of ``going backwards in time,'' the GUI which presents a global view of the program state and has a formal notion of ``navigation through time,'' and the integration with an event analyzer.","descriptionType":"Abstract"},{"description":"In M. Ronsse, K. De Bosschere (eds), proceedings of the Fifth International Workshop on Automated Debugging (AADEBUG 2003), September 2003, Ghent. cs.SE/0309027","descriptionType":"Other"}],"geoLocations":[],"fundingReferences":[],"xml":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHJlc291cmNlIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCBodHRwOi8vc2NoZW1hLmRhdGFjaXRlLm9yZy9tZXRhL2tlcm5lbC00LjMvbWV0YWRhdGEueHNkIj4KICA8aWRlbnRpZmllciBpZGVudGlmaWVyVHlwZT0iRE9JIj4xMC40ODU1MC9BUlhJVi5DUy8wMzEwMDE2PC9pZGVudGlmaWVyPgogIDxhbHRlcm5hdGVJZGVudGlmaWVycz4KICAgIDxhbHRlcm5hdGVJZGVudGlmaWVyIGFsdGVybmF0ZUlkZW50aWZpZXJUeXBlPSJhclhpdiI+Y3MvMDMxMDAxNjwvYWx0ZXJuYXRlSWRlbnRpZmllcj4KICA8L2FsdGVybmF0ZUlkZW50aWZpZXJzPgogIDxjcmVhdG9ycz4KICAgIDxjcmVhdG9yPgogICAgICA8Y3JlYXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5MZXdpcywgQmlsPC9jcmVhdG9yTmFtZT4KICAgICAgPGdpdmVuTmFtZT5CaWw8L2dpdmVuTmFtZT4KICAgICAgPGZhbWlseU5hbWU+TGV3aXM8L2ZhbWlseU5hbWU+CiAgICA8L2NyZWF0b3I+CiAgPC9jcmVhdG9ycz4KICA8dGl0bGVzPgogICAgPHRpdGxlPkRlYnVnZ2luZyBCYWNrd2FyZHMgaW4gVGltZTwvdGl0bGU+CiAgPC90aXRsZXM+CiAgPHB1Ymxpc2hlcj5hclhpdjwvcHVibGlzaGVyPgogIDxwdWJsaWNhdGlvblllYXI+MjAwMzwvcHVibGljYXRpb25ZZWFyPgogIDxzdWJqZWN0cz4KICAgIDxzdWJqZWN0IHhtbDpsYW5nPSJlbiIgc3ViamVjdFNjaGVtZT0iYXJYaXYiPlNvZnR3YXJlIEVuZ2luZWVyaW5nIChjcy5TRSk8L3N1YmplY3Q+CiAgICA8c3ViamVjdCBzdWJqZWN0U2NoZW1lPSJGaWVsZHMgb2YgU2NpZW5jZSBhbmQgVGVjaG5vbG9neSAoRk9TKSI+Rk9TOiBDb21wdXRlciBhbmQgaW5mb3JtYXRpb24gc2NpZW5jZXM8L3N1YmplY3Q+CiAgICA8c3ViamVjdCB4bWw6bGFuZz0iZW4iIHN1YmplY3RTY2hlbWU9IkFDTSI+RC4yLjU8L3N1YmplY3Q+CiAgPC9zdWJqZWN0cz4KICA8ZGF0ZXM+CiAgICA8ZGF0ZSBkYXRlVHlwZT0iU3VibWl0dGVkIiBkYXRlSW5mb3JtYXRpb249InYxIj4yMDAzLTEwLTA5VDE0OjUxOjU3WjwvZGF0ZT4KICAgIDxkYXRlIGRhdGVUeXBlPSJVcGRhdGVkIiBkYXRlSW5mb3JtYXRpb249InYxIj4yMDA5LTEyLTAxVDAyOjQyOjMzWjwvZGF0ZT4KICAgIDxkYXRlIGRhdGVUeXBlPSJBdmFpbGFibGUiIGRhdGVJbmZvcm1hdGlvbj0idjEiPjIwMDMtMTA8L2RhdGU+CiAgPC9kYXRlcz4KICA8cmVzb3VyY2VUeXBlIHJlc291cmNlVHlwZUdlbmVyYWw9IlByZXByaW50Ij5BcnRpY2xlPC9yZXNvdXJjZVR5cGU+CiAgPHZlcnNpb24+MTwvdmVyc2lvbj4KICA8cmlnaHRzTGlzdD4KICAgIDxyaWdodHMgcmlnaHRzVVJJPSJodHRwOi8vYXJ4aXYub3JnL2xpY2Vuc2VzL2Fzc3VtZWQtMTk5MS0yMDAzLyI+QXNzdW1lZCBhclhpdi5vcmcgcGVycGV0dWFsLCBub24tZXhjbHVzaXZlIGxpY2Vuc2UgdG8gZGlzdHJpYnV0ZSB0aGlzIGFydGljbGUgZm9yIHN1Ym1pc3Npb25zIG1hZGUgYmVmb3JlIEphbnVhcnkgMjAwNDwvcmlnaHRzPgogIDwvcmlnaHRzTGlzdD4KICA8ZGVzY3JpcHRpb25zPgogICAgPGRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uVHlwZT0iQWJzdHJhY3QiPkJ5IHJlY29yZGluZyBldmVyeSBzdGF0ZSBjaGFuZ2UgaW4gdGhlIHJ1biBvZiBhIHByb2dyYW0sIGl0IGlzIHBvc3NpYmxlIHRvIHByZXNlbnQgdGhlIHByb2dyYW1tZXIgZXZlcnkgYml0IG9mIGluZm9ybWF0aW9uIHRoYXQgbWlnaHQgYmUgZGVzaXJlZC4gRXNzZW50aWFsbHksIGl0IGJlY29tZXMgcG9zc2libGUgdG8gZGVidWcgdGhlIHByb2dyYW0gYnkgZ29pbmcgYGBiYWNrd2FyZHMgaW4gdGltZSwnJyB2YXN0bHkgc2ltcGxpZnlpbmcgdGhlIHByb2Nlc3Mgb2YgZGVidWdnaW5nLiBBbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIGlkZWEsIHRoZSBgYE9tbmlzY2llbnQgRGVidWdnZXIsJycgaXMgdXNlZCB0byBkZW1vbnN0cmF0ZSBpdHMgdmlhYmlsaXR5IGFuZCBoYXMgYmVlbiB1c2VkIHN1Y2Nlc3NmdWxseSBvbiBhIG51bWJlciBvZiBsYXJnZSBwcm9ncmFtcy4gSW50ZWdyYXRpb24gd2l0aCBhbiBldmVudCBhbmFseXNpcyBlbmdpbmUgZm9yIHNlYXJjaGluZyBhbmQgY29udHJvbCBpcyBwcmVzZW50ZWQuIFNldmVyYWwgc21hbGwtc2NhbGUgdXNlciBzdHVkaWVzIHByb3ZpZGUgZW5jb3VyYWdpbmcgcmVzdWx0cy4gRmluYWxseSBwZXJmb3JtYW5jZSBpc3N1ZXMgYW5kIGltcGxlbWVudGF0aW9uIGFyZSBkaXNjdXNzZWQgYWxvbmcgd2l0aCBwb3NzaWJsZSBvcHRpbWl6YXRpb25zLgogIFRoaXMgcGFwZXIgbWFrZXMgdGhyZWUgY29udHJpYnV0aW9ucyBvZiBpbnRlcmVzdDogdGhlIGNvbmNlcHQgYW5kIHRlY2huaXF1ZSBvZiBgYGdvaW5nIGJhY2t3YXJkcyBpbiB0aW1lLCcnIHRoZSBHVUkgd2hpY2ggcHJlc2VudHMgYSBnbG9iYWwgdmlldyBvZiB0aGUgcHJvZ3JhbSBzdGF0ZSBhbmQgaGFzIGEgZm9ybWFsIG5vdGlvbiBvZiBgYG5hdmlnYXRpb24gdGhyb3VnaCB0aW1lLCcnIGFuZCB0aGUgaW50ZWdyYXRpb24gd2l0aCBhbiBldmVudCBhbmFseXplci48L2Rlc2NyaXB0aW9uPgogICAgPGRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uVHlwZT0iT3RoZXIiPkluIE0uIFJvbnNzZSwgSy4gRGUgQm9zc2NoZXJlIChlZHMpLCBwcm9jZWVkaW5ncyBvZiB0aGUgRmlmdGggSW50ZXJuYXRpb25hbCBXb3Jrc2hvcCBvbiBBdXRvbWF0ZWQgRGVidWdnaW5nIChBQURFQlVHIDIwMDMpLCBTZXB0ZW1iZXIgMjAwMywgR2hlbnQuIGNzLlNFLzAzMDkwMjc8L2Rlc2NyaXB0aW9uPgogIDwvZGVzY3JpcHRpb25zPgo8L3Jlc291cmNlPg==","url":"https://arxiv.org/abs/cs/0310016","contentUrl":null,"metadataVersion":0,"schemaVersion":"http://datacite.org/schema/kernel-4","source":"mds","isActive":true,"state":"findable","reason":null,"viewCount":0,"viewsOverTime":[],"downloadCount":0,"downloadsOverTime":[],"referenceCount":0,"citationCount":0,"citationsOverTime":[],"partCount":0,"partOfCount":0,"versionCount":0,"versionOfCount":0,"created":"2022-03-18T14:05:57.000Z","registered":"2022-03-18T14:05:58.000Z","published":"2003","updated":"2022-03-18T14:05:58.000Z"},"relationships":{"client":{"data":{"id":"arxiv.content","type":"clients"}},"provider":{"data":{"id":"arxiv","type":"providers"}},"media":{"data":{"id":"10.48550/arxiv.cs/0310016","type":"media"}},"references":{"data":[]},"citations":{"data":[]},"parts":{"data":[]},"partOf":{"data":[]},"versions":{"data":[]},"versionOf":{"data":[]}}}}