• DocumentCode
    746045
  • Title

    Critical races in Ada programs

  • Author

    Karam, Gerald M. ; Stanczyk, Christine M. ; Bond, Gregory W.

  • Author_Institution
    Dept. of Syst. & Comput. Eng., Carleton Univ., Ottawa, Ont., Canada
  • Volume
    15
  • Issue
    11
  • fYear
    1989
  • fDate
    11/1/1989 12:00:00 AM
  • Firstpage
    1471
  • Lastpage
    1480
  • Abstract
    It is noted that critical races in concurrent Ada programs are an insidious source of system errors, and that the Ada language does not have concurrency features to ease the development of critical race-free programs. The authors illustrate this using the CRF language, which extends the Ada language by the addition of a powerful caller selection mechanism. It is this facility that implements a discriminatory mutual exclusion (dimutex) construct, an important feature for building less critical race-prone programs. The MLog language supports the CRF caller selection mechanisms; thus it is convenient as a rapid-prototyping platform. A design method for systematically converting CRF designs into Ada designs is presented. The method uses a mixture of mechanical and creative transformations that are guaranteed not to introduce critical races. D. Helmbold and D. Luckham´s (1985) gas-station example is used to illustrate the various approaches to applying the design method
  • Keywords
    Ada; parallel programming; Ada language; CRF language; MLog language; caller selection mechanism; concurrent Ada programs; critical races; dimutex; discriminatory mutual exclusion; gas-station example; rapid-prototyping; system errors; Aerospace electronics; Application software; Bonding; Buildings; Computer aided software engineering; Computer errors; Design methodology; Helium; Process control; Software design;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/32.41338
  • Filename
    41338