Operating systems : real time

Quadrimestre 5 - Industrial data processing option

24 hours

Coordinator : ELV

Teacher : ELV

General course description

The course presents the important notions in concurrency and real-time systems, such as semaphores, condition variables and monitors, as well as scheduling algorithms, schedulability tests, and an overview of real-time operating systems.

Learning basic skills

The student needs to know the basics of operating systems, as taught in the Operating Systems classes of the first and second year. A knowledge of the C programming language is also required.

Course Aims

The goal of the course is to provide students with a good knowledge of the theoretical bases of concurrency and real-time, as well as a working knowledge of the POSIX library tools for these fields.

Course Outline

Theory: -Concurrency -Real-time scheduling -Caracteristics of real-time operating systems

Practice: -Concurrency exercises with the POSIX 1.c library (threads, condition variables, semaphores, ...) -Real-time exercises with the POSIC 1.b and 1.c libraries (periodic threads, memory locking, fixed priorities, deadline misses, ...)

Bibliography

  • Andrew TANENBAUM. Systèmes d'exploitation. Systèmes centralisés. Suystèmes distribués. Dunod / Prentice Hall, 3ème edition, 1994.
  • David R. Butenhof Programming with POSIX Threads Addison-Wesley Professional, 1997
  • Rajib Mall Real Time Systems Theory and Practice Prentice Hall, 2009