Busy wait analysis

  • Authors:
  • Johann Blieberger;Bernd Burgstaller;Bernhard Scholz

  • Affiliations:
  • Institute for Computer-Aided Automation, TU Vienna, Treitlstr., Vienna, Austria;Institute for Computer-Aided Automation, TU Vienna, Treitlstr., Vienna, Austria;Institute of Computer Languages, TU Vienna, Argentinierstr., Vienna, Austria

  • Venue:
  • Ada-Europe'03 Proceedings of the 8th Ada-Europe international conference on Reliable software technologies
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

A busy wait loop is a loop which repeatedly checks whether an event occurs. Busy wait loops for process synchronization and communication are considered bad practice because (1) system failures may occur due to race conditions and (2) system resources are wasted by busy wait loops. In general finding a busy wait loop is an undecidable problem. To get a handle on the problem, we introduce a decidable predicate for loops that will spot most important classes of busy waiting although false alarms may occur. The loop predicate for detecting busy wait loops is based on control flow graph properties (such as loops) and program analysis techniques.