Tutorial MP1: Real Time Scheduling Theory and Its Use with Ada LISYC, University of Brest France Frank Singhoff singhoff@univ-brest.fr Abstract Level Intermediate. This tutorial assumes basic knowledge or experience with the Ada programming language. Basic understanding of tasking and real-time constraints at the level of tutorial MA1 would be helpful. We assume that attendees have a minimal background on real time operating systems, Ada tasking and critical real time applications/systems; however, a (very) short presentation of such topics will be included in the tutorial. This tutorial deals with real time scheduling theory and its use with Ada. Real time scheduling theory was firstly proposed in 1974, but stays mostly unused by many software designers. Too many practitioners have no background on real time scheduling. This tutorial should help them to understand the basis of such a theory and to apply it with Ada technologies. This tutorial is expected to help Ada engineers to predict the performances of their critical Ada real time applications. This tutorial will be organized in three parts: 1. First, we define what a real time system is and then, the theoretical results of the real time scheduling theory are presented. The basic task models and schedulers are explained (their behavior and their properties). The tutorial focusses on fixed priority scheduler and its feasibility tests (eg. Rate monotonic and worst case task response time) which is the most useful scheduler with current real-life applications. However, a dynamic priority scheduler is also presented (eg. EDF). At the end of this first part, attendees should understand what a feasibility test is and how it can help them to predict performances of their real time applications. This part is ended with a short introduction on shared resource support (eg. what a priority inversion is, how PIP/PCP work). Second, we show how real time scheduling features are taken into account in Ada international standards such as ISO/IEC Ada 1995 and 2005, the POSIX 1003 Ada binding and ARINC 653 (which is an avionic operating system standard providing an Ada binding). In this part, we try to show the relationships between the real time scheduling theory and the implementation of real time schedulers into practical systems. Finally, some Ada program examples are presented and explained. D.2 Software Engineering, D.3 Programming Languages 2. 3. Categories & Subject Descriptors: General Terms: Bio Algorithms, Design, Documentation, Languages, Management, Measurement, Performance, Reliability, Standardization. Frank Singhoff is an assistant professor at the Department of Computer Science, University of Brest, France. His contribution to the Ada Community is Cheddar, an Ada framework designed to perform scheduling analysis of real time applications. Frank Singhoff received his engineering degree in computer science, from the Conservatoire National des Arts et Metiers of Paris in 1996. He received his PhD in computer science from The ENST Paris in 1999. His website can be found at http://beru.univ-brest.fr/~singhoff Copyright is held by the author/owner(s). SIGAda 07, November 4 9, 2007, Fairfax, Virginia, USA. ACM 978-1-59593-876-3/07/0011.
/lp/association-for-computing-machinery/mp1-real-time-scheduling-theory-and-its-use-with-ada-chmK0ZUobP