The evolution of real-time programming revisited: programming the giotto model in ada 2005

  • Authors:
  • Andy Wellings;Alan Burns

  • Affiliations:
  • Department of Computer Science, University of York, Heslington, York, UK;Department of Computer Science, University of York, Heslington, York, UK

  • Venue:
  • Ada-Europe'10 Proceedings of the 15th Ada-Europe international conference on Reliable Software Technologies
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Kirsch and Segunupta in a recent paper have argued that several generations of real-time programming models for use in digital control systems can be identified: the Physical-Execution Time (PET) model, the Bounded-Execution-Time (BET) model, the Zero-Execution Time (ZET) model and the Logical-Execution-Time (LET) model. They classify Ada as belonging to the BET model and claim that a LET model, as supported by the Giotto language, is superior. Whilst historically one can recognise different approaches to programming real-time systems, this paper refutes the argument that general-purpose real-time languages like Ada (or Real-Time Java) neatly slot into a BET model. Instead, we suggest that the real issue that the LET model addresses is the ability of a programming model to give composable abstractions that allow programs to have bounded input and output jitter. Languages like Ada (and many real-time operating systems) have mechanisms that easily allow this to be achieved. Using Ada as an example, we show two different ways. Each of which has advantages and disadvantages.