Formation Linux temps réel

Transcription

Formation Linux temps réel
Formation Linux temps réel
Durée : 2 jours
Public visé
Ingénieurs et chefs de projets techniques amenés à concevoir une solution industrielle complète avec des
technologies libres.
Objectif de la formation
Présenter les principaux aspects de la mise en place et de l'utilisation des extensions temps réel du noyau
Linux.
Les travaux pratiques seront réalisés sur une carte Raspberry Pi B+ (RPi B+) basée sur un processeur ARM11
(BCM 2835), sur l'émulateur QEMU et sur plate-forme x86 (le PC du stagiaire). La RPi sera livrée avec une carte SD
de 4 Go et un câble console USB permettant également d'alimenter la RPi.
Les stagiaires utiliseront leur PC (Windows ou Linux) ou MacBook (Mac OS X 10.5 ou plus) puisque l'environnement
de développement est intégré à une image VirtualBox contenant également les supports de cours. L'image de
développement est basée sur la distribution Fedora 14.
Le matériel nécessaire aux travaux pratiques sera fourni aux stagiaires (carte RPi et accessoires, ouvrage « Linux
embarqué ») pourra être conservé à l'issue du stage (dans le cas d'une formation Inter-entreprises).
Connaissances requises
Pré-requis matériel
• Connaissance utilisateur Linux ou à défaut
UNIX
• OS Windows (XP ou supérieur), Linux ou bien
MacBook sous Mac OS X 10.5 ou supérieur.
• Notions de langage C
• Droits administrateur sur le système Windows
ou MacOS X afin d'ajouter l'image VirtualBox et
le pilote du câble USB/Série
• Notions de manipulation
commande (shell)
de
la
ligne
de
• Le stagiaire utilisera son PC portable (ou un
MacBook) pour la formation.
• La machine devra disposer AU MINIMUM de 2
Gode mémoire vive, de 20 Go d'espace libre sur
le disque et d'un lecteur de carte SD
Ils ont bénéficié du transfert de compétences Open Wide Ingénierie !
Une formation de Référence !
Cette formation a été conçue par Pierre Ficheux, auteur des quatre ouvrages Linux embarqué.
Formation Linux temps réel
Durée : 2 jours
Programme formation Linux temps réel
•
•
•
Solutions temps réel sous Linux
o
Rappels sur le temps réel
o
Linux standard
o
Les patch de préemption du noyau Linux (preempt-kernel, low-latency)
o
Le patch PREEMPT-RT
o
Technique du co-noyau (RTLinux, RTAI, Xenomai)
o
Tableau comparatif des solutions
o
Test des extensions temps réel de Linux sur la base d'une mini-distribution construite avec Buildroot et
basée sur PREEMPT-RT, RTAI ou Xenomai. Pour chaque extension, on mettra en évidence les
performances en utilisant les outils hackbench, latency, cyclictest, stress.
Programmation temps réel en POSIX sur noyau Linux standard
o
Configuration de l'ordonnanceur Linux (SCHED_OTHER, SCHED_FIFO, SCHED_RR)
o
Les signaux
o
Les « threads » POSIX : création, arrêt, MUTEX, sémaphores, conditions, extensions temps réel
o
Compteurs POSIX.1 et POSIX.4
o
Création d'un tâche périodique POSIX exploitant les GPIO de la RPi (rpi_gpio) et mise en évidence des
problèmes de « jitter »
Focus sur Xenomai
o
Historique Introduction
o
Description fonctionnelle
o
Architecture
o
Installation et mesure de performances avec les outils latency et hackbench (voir test PREEMPT-RT /
RTAI)
o
Domaines d'exécution, fonctionnement d'ADEOS
o
Migration et conception d'application
API POSIX de Xenomai
Mise en œuvre de l'API POSIX sur l'exemple xenomai_rpi_gpio et comparaison avec la version
Linux rpi_gpio.
Présentation de l'API RTDM (Real Time Driver Model)
Modification de l'application xenomai_rpi_gpio pour utiliser le pilote RTDM