• DocumentCode
    2590438
  • Title

    Generating dynamic program analysis tools

  • Author

    Sloane, Anthony M.

  • Author_Institution
    Dept. of Comput. Sci., James Cook Univ. of North Queensland, Townsville, Qld., Australia
  • fYear
    1997
  • fDate
    29 Sep-2 Oct 1997
  • Firstpage
    166
  • Lastpage
    173
  • Abstract
    Sophisticated instrumentation based systems exist for building dynamic analysis tools but to use these systems a developer must write the instrumentation and analysis code by hand. The paper describes how analysis tools can be generated automatically by specifying analysis algorithms using attribute grammars based on the static and dynamic structure of the program being analysed. Using methods similar to those used to generate compilers, this approach enables implicit storage allocation for analysis data, automatic sequencing of analysis steps and transparently supports a variety of data sources and independence from the underlying implementation technology. Furthermore, analysis algorithms can be described in a modular way, enabling reuse. To demonstrate the approach, the paper describes the Wyong system that generates dynamic analysis tools from specifications. An example analysis module specification is described and its reuse is illustrated. Wyong is based on the Eli compiler generation system and the ATOM program instrumentation system. To avoid having to build extremely large trees describing the dynamic structure of a program, Wyong automatically generates instrumentation code for ATOM. Combined with other modules generated by Eli, the ATOM instrumented binary evaluates the specified analysis attribute computations as it executes. Thus the benefits of a specification based method are combined with the efficiency of an instrumentation based implementation
  • Keywords
    attribute grammars; automatic programming; compiler generators; formal specification; program diagnostics; software reusability; ATOM instrumented binary; ATOM program instrumentation system; Eli compiler generation system; Wyong system; analysis algorithm specification; analysis module specification; attribute grammars; automatic sequencing; data sources; dynamic program analysis tool generation; dynamic structure; implicit storage allocation; instrumentation based implementation; instrumentation based systems; instrumentation code; specification based method; Algorithm design and analysis; Buildings; Computational modeling; Computer architecture; Computer science; Data analysis; Hardware; Instruments; Performance analysis; Writing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering Conference, 1997. Proceedings., Australian
  • Conference_Location
    Sydney, NSW
  • Print_ISBN
    0-8186-8081-4
  • Type

    conf

  • DOI
    10.1109/ASWEC.1997.623768
  • Filename
    623768