Component
École Nationale Supérieure d'Électrotechnique d'Électronique d'Informatique d'Hydraulique et des Télécommunications
Semester
Printemps
Objectives
The objective of this course is to introduce the basic concepts, organization, and fundamental services of an operating system. The focus is on describing the core services of an operating system kernel in order to discover and practice reactive and parallel multitasking programming within a real-time operating system used in the automotive industry.
Description
This course offers a description of the organization of an operating system, the concept of processes/tasks, task scheduling with a focus on real-time task execution, and multithreaded programming with data sharing and synchronization via monitors. The course includes examples and practical application of these concepts on Unix-Linux and OSEK-TrampolineOS within a design office environment.
Three design offices offer students the opportunity to discover (1) the Unix/Linux shell and basic commands, (3) the implementation of multithreaded applications using monitor-based synchronization mechanisms, and the programming of a real-time application to control an inverted pendulum on a Lego Mindstorms robot using OSEK-TrampolineOS.
Pre-requisites
A solid understanding of algorithms and C programming is essential.
