Formation Linux et temps réel

Formation Linux et temps réel

Maîtrisez Linux pour le temps réel et optimisez la réactivité et la fiabilité et concevez des systèmes temps réel à haute fiabilité !

Prix (Formation inter-entreprise)

1400€ HT / personne

Durée

2 jours

Dates

Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)

Cette formation Linux et le temps réel vous permettra de comprendre et de mettre en œuvre les mécanismes d’ordonnancement indispensables aux systèmes temps réel.

Dans le cadre de cette formation, vous découvrirez notamment :
- les Schedulers et la répartition des tâches,
- les possibilités et limites du temps réel natif de Linux,
- la configuration des priorités et les défis classiques comme l’inversion de priorités
- les solutions pour un temps réel encore plus strict grâce à PREEMPT_RT et Xenomai.

À l’issue de cette formation, vous repartirez avec des compétences pour concevoir et maintenir des systèmes à haute fiabilité, tout en profitant de la flexibilité et de la robustesse de Linux.

Cette formation s’adresse aux développeur·seuse·s qui souhaitent concilier la puissance de Linux avec des besoins temporels exigeants.


Vous êtes intéressée·e par les formations Linux ?

Alors vous pouvez consulter les formations suivantes :
- formation écriture de drivers sous Linux
- formation administration système Linux

Les objectifs

  • Comprendre les problématiques d’ordonnancements multi-tâches et multi-coeurs
  • Connaître les possibilités et limitations du temps réel natif de Linux
  • Découvrir et mettre en œuvre les patchs PREEMPT_RT et Xenomai

Pré-requis

Le programme de la formation Linux et temps réel

Jour 1 : Fondamentaux du temps réel sous Linux

  • Programmation multitâche et multicœur
    • Multitâche sous Linux
      • processus, threads, espaces d’adressage, mutex, IPC
    • Programmation multicœur
      • multiprocesseur, multicœur et hyperthreading
      • migrations de tâches, affinités des tâches et des interruptions
      • confinement de processus, fréquence de fonctionnement du processeur
  • Ordonnancement temps partagé
    • Ordonnancement
      • états des tâches, commutations
    • Schedulers
      • goodness, O(1), CFS, priorité et nice
  • Temps réel natif de Linux
    • Scheduling Fifo et Round Robin
      • configuration, priorités temps réel, garde-fou
    • Limitation du temps réel natif
      • interruptions monolithiques et améliorations avec interruptions threadeds
      • réveil d’une tâche temps réel
      • amélioration avec préemptibilité du kernel
    • Problèmes temps réel classiques
      • lancement de tâches en parallèle
      • inversion de priorités
      • reprise de mutex.

Mises en pratique :
- création de processus, de threads, synchronisation des threads, utilisation de la mémoire partagée, mutex inter-processus, files de message
- migration de processus, affinité des threads, affinité des interruptions
- observation du comportement des tâches à priorités modifiées
- tâches FIFO de priorité maximale, perturbation des tâches par des interruptions, mesure de latence d’interruption et de réveil des tâches, inversion de priorités, héritage de priorités des mutex

Jour 2 : Vers un temps réel avancé

  • Temps réel amélioré avec PREEMPT_RT
    • Patch PREEMPT_RT
      • principe, disponibilité, application et compilation du noyau
    • Effets du patch
      • préemptibilité complète, threaded interrupts
    • Instrumentation et mesures
      • RT-test, cyclictests, workbench, ftrace
  • Approches du hard realtime avec Linux
    • Principes
      • temps réel strict sous Linux, RT-Linux, RTAI, Xenomai
    • Installation et tests de Xenomai&
      • patch, bibliothèque, outil latency
    • Aperçu de l’API de Xenomai
      • tâches, sommeil, timers, communication et synchronisation
  • Conclusion
    • Discussions libres sur l’ensemble des thèmes abordés

Mises en pratique :
- observation des threaded interrupts, mesure de latence d’interruption
- expérimentations libres suivant les demandes des stagiaires

Télécharger le programme

Le(s) formateur(s)

Christophe BLAESS

Christophe BLAESS

Ingénieur Linux industriel depuis plus de 20 ans, Christophe est intéressé par les aspects bas niveau de Linux (embarqué, temps réel, drivers, etc.) et est attaché aux logiciels libres en général.

Il est l'auteur de plusieurs livres sur Linux (Développement système sous Linux, Écriture de scripts shell sous Linux, Solutions temps réel sous Linux…). Christophe aime partager ses connaissances avec ses pairs et est aussi le créateur de nombreux projets libres sur Github.

Au-delà de ses activités d'ingénierie (développement, mise au point de systèmes embarqués, conseil et assistance technique) et de formation, Christophe organise régulièrement différentes manifestations sur Linux embarqué (Paris embedded meetup et Live embedded event notamment).

Voir son profil détaillé

A propos de Human Coders

Human Coders c'est un centre de formation pour développeurs avec :

  • une certification Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • de nombreux clients qui nous font confiance depuis des années
  • un manifeste pour garantir des formations à taille humaine, des formateurs passionnés, de véritables workshops...
  • 153 formations au catalogue, 1629 sessions depuis nos débuts en 2012 avec une moyenne de satisfaction de 4,6/5
  • la possibilité de vous proposer un accompagnement personnalisé ou du conseil après la formation

Besoin d'aide ?

Vous souhaitez discuter avec nous à propos de votre projet de formation ?
Vous voulez plus d'information sur une formation ou notre fonctionnement ?


Rappel Email

Nos forces

  • Des formations à taille humaine
  • Des formateurs passionnés
  • Des véritables workshop
Accéder au Manifeste

Nos clients

Formation Linux et temps réel

Maîtrisez Linux pour le temps réel et optimisez la réactivité et la fiabilité et concevez des systèmes temps réel à haute fiabilité !

Formation Linux et temps réel

Cette formation Linux et le temps réel vous permettra de comprendre et de mettre en œuvre les mécanismes d’ordonnancement indispensables aux systèmes temps réel.

Dans le cadre de cette formation, vous découvrirez notamment :
- les Schedulers et la répartition des tâches,
- les possibilités et limites du temps réel natif de Linux,
- la configuration des priorités et les défis classiques comme l’inversion de priorités
- les solutions pour un temps réel encore plus strict grâce à PREEMPT_RT et Xenomai.

À l’issue de cette formation, vous repartirez avec des compétences pour concevoir et maintenir des systèmes à haute fiabilité, tout en profitant de la flexibilité et de la robustesse de Linux.

Cette formation s’adresse aux développeur·seuse·s qui souhaitent concilier la puissance de Linux avec des besoins temporels exigeants.


Vous êtes intéressée·e par les formations Linux ?

Alors vous pouvez consulter les formations suivantes :
- formation écriture de drivers sous Linux
- formation administration système Linux

Les objectifs

  • Comprendre les problématiques d’ordonnancements multi-tâches et multi-coeurs
  • Connaître les possibilités et limitations du temps réel natif de Linux
  • Découvrir et mettre en œuvre les patchs PREEMPT_RT et Xenomai

Pré-requis

Le programme de la formation Linux et temps réel

Jour 1 : Fondamentaux du temps réel sous Linux

  • Programmation multitâche et multicœur
    • Multitâche sous Linux
      • processus, threads, espaces d’adressage, mutex, IPC
    • Programmation multicœur
      • multiprocesseur, multicœur et hyperthreading
      • migrations de tâches, affinités des tâches et des interruptions
      • confinement de processus, fréquence de fonctionnement du processeur
  • Ordonnancement temps partagé
    • Ordonnancement
      • états des tâches, commutations
    • Schedulers
      • goodness, O(1), CFS, priorité et nice
  • Temps réel natif de Linux
    • Scheduling Fifo et Round Robin
      • configuration, priorités temps réel, garde-fou
    • Limitation du temps réel natif
      • interruptions monolithiques et améliorations avec interruptions threadeds
      • réveil d’une tâche temps réel
      • amélioration avec préemptibilité du kernel
    • Problèmes temps réel classiques
      • lancement de tâches en parallèle
      • inversion de priorités
      • reprise de mutex.

Mises en pratique :
- création de processus, de threads, synchronisation des threads, utilisation de la mémoire partagée, mutex inter-processus, files de message
- migration de processus, affinité des threads, affinité des interruptions
- observation du comportement des tâches à priorités modifiées
- tâches FIFO de priorité maximale, perturbation des tâches par des interruptions, mesure de latence d’interruption et de réveil des tâches, inversion de priorités, héritage de priorités des mutex

Jour 2 : Vers un temps réel avancé

  • Temps réel amélioré avec PREEMPT_RT
    • Patch PREEMPT_RT
      • principe, disponibilité, application et compilation du noyau
    • Effets du patch
      • préemptibilité complète, threaded interrupts
    • Instrumentation et mesures
      • RT-test, cyclictests, workbench, ftrace
  • Approches du hard realtime avec Linux
    • Principes
      • temps réel strict sous Linux, RT-Linux, RTAI, Xenomai
    • Installation et tests de Xenomai&
      • patch, bibliothèque, outil latency
    • Aperçu de l’API de Xenomai
      • tâches, sommeil, timers, communication et synchronisation
  • Conclusion
    • Discussions libres sur l’ensemble des thèmes abordés

Mises en pratique :
- observation des threaded interrupts, mesure de latence d’interruption
- expérimentations libres suivant les demandes des stagiaires

Télécharger le programme

Le(s) formateur(s)

Christophe BLAESS

Christophe BLAESS

Ingénieur Linux industriel depuis plus de 20 ans, Christophe est intéressé par les aspects bas niveau de Linux (embarqué, temps réel, drivers, etc.) et est attaché aux logiciels libres en général.

Il est l'auteur de plusieurs livres sur Linux (Développement système sous Linux, Écriture de scripts shell sous Linux, Solutions temps réel sous Linux…). Christophe aime partager ses connaissances avec ses pairs et est aussi le créateur de nombreux projets libres sur Github.

Au-delà de ses activités d'ingénierie (développement, mise au point de systèmes embarqués, conseil et assistance technique) et de formation, Christophe organise régulièrement différentes manifestations sur Linux embarqué (Paris embedded meetup et Live embedded event notamment).

Voir son profil détaillé

A propos de Human Coders

Human Coders c'est un centre de formation pour développeurs avec :

  • une certification Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • de nombreux clients qui nous font confiance depuis des années
  • un manifeste pour garantir des formations à taille humaine, des formateurs passionnés, de véritables workshops...
  • 153 formations au catalogue, 1629 sessions depuis nos débuts en 2012 avec une moyenne de satisfaction de 4,6/5
  • la possibilité de vous proposer un accompagnement personnalisé ou du conseil après la formation

* Nombre de personnes ayant répondu au questionnaire de satisfaction sur cette formation depuis 2012