A critique of the Ada 9X mutual control mechanism (requeue) and an alternative mapping (onlywhen)

  • Authors:
  • Ufuk Verün;Tzilla Elrad

  • Affiliations:
  • -;-

  • Venue:
  • ACM SIGAda Ada Letters
  • Year:
  • 1992

Quantified Score

Hi-index 0.00

Visualization

Abstract

Protected Record (PR) is the proposed Ada 9X light-weight synchronization mechanism. We assume that the reader is familiar with the Ada 9X proposal for PR [DoD, DPW, BW]. The requeue is one of the Ada 9X mappings of the requirement for flexibility and user control over scheduling. Requeue implements the requirement for Mutual Control which is the capability to make adecision based on a relationship among the states of both parties in a rendezvous (Relationship between parameters passed in by the caller task and the state of a protected record/called task).In the August 1991 Ada 9X Mapping Rationale there is a discussion about the requeue proposal aimed at the improvement of real-time features of Ada language [MR]. We propose an alternative mapping called onlywhen barrier for the realization of Mutual Control. Our mapping seems like requiring relatively more changes in the semantics definitions and resulting in increased run-time costs, but reducing the complexity of the code substantially and ultimately making the implementation of the Mutual Control more efficient than by using the requeue. A resource allocation problem and some solutions to it utilizing requeue and private entries are presented in [MR] and also summarized in [BW]. We examine the same problem and provide alternative solutions using the onlywhen proposal.