Show simple item record

dc.contributor.advisorMichael D. Ernst.en_US
dc.contributor.authorMorse, Benjamin, 1979-en_US
dc.contributor.otherMassachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science.en_US
dc.date.accessioned2006-03-24T16:12:07Z
dc.date.available2006-03-24T16:12:07Z
dc.date.copyright2002en_US
dc.date.issued2002en_US
dc.identifier.urihttp://hdl.handle.net/1721.1/29653
dc.descriptionThesis (M.Eng. and S.B.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2002.en_US
dc.descriptionIncludes bibliographical references (p. 73-75).en_US
dc.description.abstractThis thesis details the implementation and performance of a Daikon front end for the C and C++ languages. The Daikon dynamic invariant detection suite is a system designed to extract formal specifications from programs, in the form of information about their variables and their relationships to each other. The system consists of a front end and the analysis engine. The front end instruments the source code of a target program, inserting code that outputs the values of the program's variables when run. The user compiles and runs the instrumented program, generating a trace file that contains variable values. This data is then sent to Daikon proper, which performs analysis on it and reports invariants about the program variables. Daikon is a useful tool that can discover invariants that current static methods cannot find. While the invariant analysis tool is language independent, the front ends -- tools that instrument of the user code -- must be written for every language to be instrumented. There is a huge base of pre-existing code written in C/C++ for which invariants can be discovered. C and C++ are also widely deployed, comprise a large segment of software currently in development, and are therefore valuable candidates for analysis. The key difficulty in instrumenting a type-unsafe language like C is that the instrumented program has to determine what variables are valid, and to what extent; so that it does not output garbage values or cause a segmentation fault by dereferencing an invalid pointer.en_US
dc.description.statementofresponsibilityby Benjamin Morse.en_US
dc.format.extent75 p.en_US
dc.format.extent2661908 bytes
dc.format.extent2661715 bytes
dc.format.mimetypeapplication/pdf
dc.format.mimetypeapplication/pdf
dc.language.isoengen_US
dc.publisherMassachusetts Institute of Technologyen_US
dc.rightsM.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission.en_US
dc.rights.urihttp://dspace.mit.edu/handle/1721.1/7582
dc.subjectElectrical Engineering and Computer Science.en_US
dc.titleA C/C++ front end for the Daikon dynamic invariant detection systemen_US
dc.typeThesisen_US
dc.description.degreeM.Eng.and S.B.en_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
dc.identifier.oclc53711380en_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record