• DocumentCode
    1547419
  • Title

    Implementing atomic actions in Ada 95

  • Author

    Wellings, Andy ; Burns, Alan

  • Author_Institution
    Dept. of Comput. Sci., York Univ., UK
  • Volume
    23
  • Issue
    2
  • fYear
    1997
  • fDate
    2/1/1997 12:00:00 AM
  • Firstpage
    107
  • Lastpage
    123
  • Abstract
    Atomic actions are an important dynamic structuring technique that aid the construction of fault-tolerant concurrent systems. Although they were developed some years ago, none of the well-known commercially-available programming languages directly support their use. This paper summarizes software fault tolerance techniques for concurrent systems, evaluates the Ada 95 programming language from the perspective of its support for software fault tolerance, and shows how Ada 95 can be used to implement software fault tolerance techniques. In particular, it shows how packages, protected objects, requeue, exceptions, asynchronous transfer of control, tagged types, and controlled types can be used as building blocks from which to construct atomic actions with forward and backward error recovery, which are resilient to deserter tasks and task abortion
  • Keywords
    Ada; concurrency control; exception handling; parallel programming; software fault tolerance; system recovery; Ada 95; asynchronous transfer of control; atomic actions; controlled types; deserter tasks; dynamic structuring technique; error recovery; exception handling; exceptions; fault-tolerant concurrent systems; packages; protected objects; recovery blocks; requeue; software fault tolerance techniques; tagged types; task abortion; Abortion; Computer Society; Computer languages; Error correction; Fault detection; Fault tolerance; Fault tolerant systems; Packaging; Protection; Redundancy;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/32.585500
  • Filename
    585500