Critical races in Ada programs | IEEE Journals & Magazine | IEEE Xplore

Critical races in Ada programs


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 ...Show More

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.<>
Published in: IEEE Transactions on Software Engineering ( Volume: 15, Issue: 11, November 1989)
Page(s): 1471 - 1480
Date of Publication: 30 November 1989

ISSN Information:


Contact IEEE to Subscribe

References

References is not available for this document.