Formation Informatique | Formation Management
Informatique » Systèmes d'exploitation » Formation Linux »

Linux, programmation temps réel POSIX 1003.1b


Formation Linux temps reel

Stage pratique
Eligible au DIF

Réf : PTR

Prix 2012 : 1650 € H.T.
Durée :  3  jours
Cliquer sur une session pour réserver:

Paris
4 juin 12, 17 sept. 12

Toutes les sessions  

Lyon,Aix
Nantes,Rennes
Toulouse,Bordeaux
Bruxelles,Strasbourg
Lille,Geneve
Sophia-antipolis,Luxembourg
:
Nous contacter
Filières métiers:

Développeur C / C++
Développeur C / C++ temps réel et embarqué

version pdf imprimer Faire suivre


Les objectifs de cette formation Linux temps reel


Cette formation vous permettra de mettre en oeuvre les interfaces du standard POSIX 1003.1b de l'IEEE sur système Linux et RTOS. Vous comprendrez ainsi comment utiliser avec efficacité les extensions temps réel portables pour la programmation sur différents types de systèmes UNIX et RTOS.

Participants de cette formation Linux temps reel

Développeur confronté à la mise en oeuvre d'applications temps réel désireux d'utiliser une interface de programmation temps réel standard sous Linux avec ou sans extensions Xenomai ou sous un autre système de type RTOS comme RTEMS, QNX...

Pré-requis de cette formation Linux temps reel

Connaissances de base des systèmes d'exploitation (pour comprendre le processus de développement des applications temps réel) et du développement de programmes en C sous Linux.

Travaux pratiques

Les manipulations seront exécutées sur une plate-forme de type PC, les travaux pratiques proposés permettent aux stagiaires de mettre en oeuvre une application temps réel et de réaliser l'interface avec Linux et un RTOS (RTEMS...).


Programme de cette formation Linux temps reel

Généralités sur le temps réel et les systèmes d'exploitation

- Temps réel.

- Notion de déterminisme, de "schedulability".

- lOS temps partagés et temps réel.

- Normes de l'IEEE et de l'ARINC.

- DO178b.

- Extensions temps réel POSIX 1003.1b.

- Sémaphores, Process Memory Locking, Memory Mapped Files and Shared Memory Objects.

- Priority Scheduling, Realtime Signal Extension, Timers.

- Interprocess Communication, Synchronized Input and Output, Asynchronous Input and Output.


Mise en oeuvre de POSIX 1003.1b (sous Linux)

- Implémentation des sémaphores POSIX.

- Gestion de l'inversion de priorité sous POSIX.

- Cas spécifique des futex sous Linux.

- Le scheduling temps réel sous Linux.

- Les politiques de scheduling, les priorités, étude de cas.

- Gestion de l'affinité aux processeurs.

- Gestion de l'inversion de priorité.

- Mémoire partagée de type POSIX.

- Analyse de la gestion mémoire.

- Rappels sur le point de vue déterministe des IPC POSIX, mémoire partagée, messages et sémaphores, sous Linux.

- Comparaisons avec les IPC SV.

- Les signaux POSIX. Signaux traditionnels et signaux temps réel. Implémentation des signaux.

- Gestion de la date et des timers POSIX.

- Extensions haute résolution de la gestion du temps.

- Entrées sorties asynchrones. Analyse des implémentations POSIX et Native. Librairie libaio.

Travaux pratiques
Mise en oeuvre du "memory lock" du "mapping" de fichiers et de la mémoire partagée de type POSIX. Implémentation des signaux temps réel. Mise en oeuvre de la librairie libaio.

Mise en oeuvre avec un RTOS

- Présentation de Xenomai et de ses API POSIX.

- Extensions temps réel non portables de xenomai.

- Présentation de RTEMS.

- Interface POSIX 1003.1b de RTEMS.

Travaux pratiques
Mise en oeuvre avec une application de mesure de latence sous Xenomai, RTEMS.

Les limitations de la norme

- Apport des standards ARINC 654, 653 et l'interface APEX pour la mise en oeuvre d'applications temps réel dans des milieux à risque, avionique, construction automobile ...

- Guide DO178b pour l'avionique.

- Les schedulers adaptés au temps réel. Sporadic Scheduler, Adaptative Partition Scheduler, Earliest Deadline First scheduler, Constant Bandwidth Scheduler.

Travaux pratiques
Exemples d'implémentations avec AIR (ARINC Interface sur RTEMS) et l'hyperviseur temps réel Xtratum. Mise en oeuvre de différents schedulers sous RTEMS et Linux.