Implementing Ada.Real_Time.Clock and Absolute Delays in Real-Time Kernels

  • Authors:
  • Juan Zamorano;José F. Ruiz;Juan Antonio de la Puente

  • Affiliations:
  • -;-;-

  • Venue:
  • Ada Europe '01 Proceedings of the 6th Ade-Europe International Conference Leuven on Reliable Software Technologies
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

A real-time kernel providing multitasking and timing services is a fundamental component of any real-time system. Timing services, which are crucial to the correct execution of this kind of applications, are usually provided by a real-time clock and timer manager, which is part of the kernel and implements the required functionality on top of the one or more hardware timers. Kernel timing services must be implemented carefully in order to avoid race problems and inconsistencies which may be caused by the fact that many common hardware timer chips are not intended at a direct implementation of software timing services. This paper provides advice on the implementation of two of the Ada timing services: Ada.Real_Time.Clock, and absolute delays (delay until). The example implementation of both services in the Open Ravenscar Kernel, which is based on the ideas presented in the paper, is also described.