Hardware Support for Software Safety

Rising chip densities have brought us dramatic improvements in the cost-performance ratio of processors. At the same time, software costs are burgeoning. Large software systems are expensive to develop and are riddled with errors. Certain types of defects (e.g., those related to memory access, concurrency, and security) are particularly difficult to track down and can have devastating consequences. We believe it is time to explore using some of the increasing silicon real-estate to provide extra functionality to support software development. We propose dedicating a portion of these new transistors to provide programmable monitoring hardware which can pass information between an executing (hardware) thread and an auxiliary (hardware) thread to enhance software development, make debugging more efficient, increase reliability and provide run-time security.


  • Fred Chong
  • Prem Devanbu
  • Matt Farrens
  • Graduate Students

  • Diana Keen
  • Foo Lim
  • Undergraduates

  • Jenny Hollfelder
  • Paul Sultana
  • Funding

    This work is funded by the National Science Foundation. 

    Last updated May 8, 2001