• DocumentCode
    1508397
  • Title

    Starvation and critical race analyzers for Ada

  • Author

    Karam, Gerald M. ; Buhr, Raymond J A

  • Author_Institution
    Dept. of Syst. & Comput. Eng., Carleton Univ., Ottawa, Ont., Canada
  • Volume
    16
  • Issue
    8
  • fYear
    1990
  • fDate
    8/1/1990 12:00:00 AM
  • Firstpage
    829
  • Lastpage
    843
  • Abstract
    Starvation and critical race analysis tools for Ada designs are described. These tools are part of a temporal analysis toolset that includes an operational specification language, a language interpreter, and a deadlock analyzer for Ada. The starvation analyzer is based on a set-theoretic model of starvation. It uses a proof tree produced by the deadlock analyzer to define the possible computation space of the design. A preprocessing phase of the starvation tool optimizes the analysis so that the resulting analysis is efficient. Unlike livelock analysis in state machines, the starvation analyzer does not require a priori specification of home states to discern liveness. The critical race analysis tool provides semiautomatic proof of critical races by identifying nondeterministic rendezvous (races) from the proof tree generated by the deadlock analyzer, and then assisting the human operator in identifying which of these constitute critical races. Several design examples are used to demonstrate the capabilities of the two analysis methods
  • Keywords
    Ada; program interpreters; programming; software tools; specification languages; system recovery; Ada designs; computation space; critical race analysis tools; deadlock analyzer; design examples; human operator; language interpreter; liveness; nondeterministic rendezvous; operational specification language; preprocessing phase; race analyzers; semiautomatic proof; set-theoretic model; starvation analyzer; starvation tool; temporal analysis toolset; Algorithm design and analysis; Automatic testing; Delay; Helium; Humans; Information analysis; Software testing; Specification languages; System analysis and design; System recovery;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/32.57622
  • Filename
    57622