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
Link To Document