GGrantIndex
← Search

SHF: Small: In Vivo Software Monitoring: Architectural and Compiler Support

$499,271FY2009CSENSF

University Of Minnesota-Twin Cities, Minneapolis MN

Investigators

Abstract

Monitoring of software's execution is crucial in numerous software development tasks. Current monitoring efforts generally require extensive instrumentation of the software or dedicated hardware---it resembles studying the software specimens in-vitro. To fully understand software's behaviors, the production software must be studied in-vivo---in its operational environment. To address these fundamental software engineering challenges, this research addresses a framework for in-vivo monitoring and observation of software-intensive systems. Three fundamental requirements are placed on in-vivo monitoring frameworks: non-intrusive, low-overhead, and predictable. These frameworks must also allow low-level monitoring and be highly flexible to enable a broad range of monitoring activities. To satisfy these requirements, this research changes how software is compiled and how hardware is designed by pursuing the following specific aims: (i) provide flexible architectural support shared by a variety of monitoring activities; (ii) develop a monitor-aware compiler that generates the monitor together with the software to be monitored; and (iii) develop state extraction optimizations to efficiently extract program states from an executing application and forward the states to the monitor. The resulting framework is empirically evaluated to assess its performance as compared to related solutions and assess its flexibility for a variety of software engineering monitoring tasks.

View original record on NSF Award Search →
SHF: Small: In Vivo Software Monitoring: Architectural and Compiler Support · GrantIndex