> Formations > Technologies numériques > Systèmes d'exploitation > Linux, Unix, macOS > Formation Linux industriel, temps réel et embarqué > Formations > Technologies numériques > Formation Linux industriel, temps réel et embarqué

Formation : Linux industriel, temps réel et embarqué

Linux industriel, temps réel et embarqué



Best

Vous découvrirez dans cette formation l'architecture générale d'un système embarqué et mettrez en œuvre les outils de développement industriel disponibles librement sous Linux. Vous implémenterez les mécanismes d'ordonnancement temps partagé et réel souple, vous accéderez au développement temps réel strict avec l'extension LinuxRT ou Xenomai. Vous verrez enfin comment personnaliser le boot d'un système Linux.


INTER
INTRA
SUR MESURE

Cours pratique en présentiel ou à distance
Disponible en anglais, à la demande

Réf. LXT
  4j - 28h00
Prix : 2950 € H.T.
Pauses-café et
déjeuners offerts




Vous découvrirez dans cette formation l'architecture générale d'un système embarqué et mettrez en œuvre les outils de développement industriel disponibles librement sous Linux. Vous implémenterez les mécanismes d'ordonnancement temps partagé et réel souple, vous accéderez au développement temps réel strict avec l'extension LinuxRT ou Xenomai. Vous verrez enfin comment personnaliser le boot d'un système Linux.


Objectifs pédagogiques
À l’issue de la formation, le participant sera en mesure de :
Découvrir les outils de développement industriel sous Linux
Maîtriser les mécanismes d'ordonnancement temps partagé et réel souple
Accéder au développement temps réel strict avec l'extension LinuxRT ou Xenomai
Personnaliser le boot d'un système Linux

Public concerné
Développeurs Linux/Unix.

Prérequis
Bonnes connaissances d'un système Linux/Unix et de la programmation en C.
Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en faisant  ce test.

Méthodes et moyens pédagogiques
Travaux pratiques
Les nombreux exercices et études de cas progressifs sont réalisés sur un réseau de serveurs Linux. Tous les programmes réalisés en TP existent sous forme de squelettes que les participants complètent eux-mêmes.

Modalités d'évaluation
Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de QCM, mises en situation, travaux pratiques…
Le participant complète également un test de positionnement en amont et en aval pour valider les compétences acquises.

Programme de la formation

Architecture

  • Système informatique ordinaire et système embarqué.
  • Contraintes d'un système embarqué.
  • Architecture générale d'un système embarqué.
  • Démarrage du système, étape de boot.
  • Architecture du noyau Linux. Emplacement des sources.
  • Démarrage du système, phases de boot (code dépendant, commun).
Travaux pratiques
Détection d'erreur à la compilation, à l'édition des liens, utilisation d'Eclipse/CDT, utilisation d'une chaîne de compilation croisée. Débogage. Détection des fuites mémoire et des débordements de buffers. Test de couverture sur l'exécution d'une application.

Développement industriel sous Linux

  • Environnement Linux.
  • Mode de fonctionnement : utilisateur, superviseur.
  • Licences et implications pour le développement industriel.
  • Outils de développement libres (compilateur, debugger, outils d'analyse, de trace et de tests).
  • Les différents IDE (Integrated Development Environment) : Eclipse...
  • Méthodes de compilation avancées.
  • La chaîne de compilation croisée.
  • La gestion de mémoire.
  • La détection des fuites mémoire.
  • Le débordement de buffers.

Ordonnancement temps partagé et réel souple

  • Précision des mesures horaires et des attentes.
  • Ordonnancement temps partagé. Les règles de la préemptibilité.
  • Le fonctionnement général de l'ordonnanceur, priorités et partage du CPU.
  • Quand le noyau devient-il préemptible ?
  • Gestion du temps et précision des timers.
  • Temps réel souple Posix.1b : principes.
  • Configuration de l'ordonnancement des processus et des threads.
  • Problèmes algorithmiques liés au temps réel.
  • L'ordonnanceur Linux : noyaux 3.x
Travaux pratiques
Création et gestion de processus. Priorités et partage du CPU. Examen du fonctionnement de l'ordonnanceur. Basculement de processus en temps réel. Vérification de la précision des timers et des sommeils.

Temps réel strict - Extension Xenomai

  • Principe du temps réel strict.
  • Vue d'ensemble de l'extension Xenomai.
  • Concepts de temps réel strict : principe des micro-noyaux Adeos, Xenomai, LinuxRT.
  • Installation et API de Xenomai.
  • Utilisation de l'extension LinuxRT.
  • Ordonnancement temps réel strict en mode utilisateur.
  • Interruptions (activation, désactivation...).
  • Protection contre les interruptions.
  • Gestion des communications.
  • Présentation de l'API de Xenomai, installation de Xenomai.
  • La gestion des tâches temps réel strict.
Travaux pratiques
Installation de Xenomai. Création de tâches temps réel strict. Gestion des communications. Ecriture d'un gestionnaire d'interruption, de processus ordonnancé en temps réel strict. Installation et utilisation de Xenomai.

Environnements restreints, systèmes embarqués

  • Problématique des systèmes embarqués.
  • Système LinuxRT, Xenomai : API, développement.
  • Linux embarqué : choix d'une version du noyau.
  • Bibliothèques système (Newlib, DietLibc).
  • Applications et utilitaires à embarquer.
  • Interface utilisateur.
  • Interfaces graphiques optimisées (directfb, etc).
  • Présentation et configuration d'un chargeur de démarrage.
  • Générer un noyau réduit. Généralité sur le système de fichiers.
  • Installation de la chaîne de compilation.
Travaux pratiques
Installation, compilation d'une application personnalisée LinuxRT, Xenomai et d'un noyau de taille réduite. Création d'un système de fichiers. Incorporation d'applications minimales. Ecriture d'application utilisant une interface par Leds ou afficheur LCD. Installation d'un serveur HTTP embarqué.

Personnalisation du boot du système

  • Les différentes phases de boot (mise sous tension, Bios, chargeur (Grub, UBoot...) du noyau.
  • Le rôle du processus Init. Le niveau d'exécution.
  • Le contenu du processus Init.
  • Le remplacement du processus Init par une version personnalisée.
  • Initialisation depuis l'espace utilisateur.
Travaux pratiques
Création et personnalisation d'un disque initrd. Remplacement du processus Init par une version personnalisée et remplacement par un script Shell.
Solutions de financement
Plusieurs solutions existent pour financer votre formation et dépendent de votre situation professionnelle.
Découvrez-les sur notre page Comment financer sa formation ou contactez votre conseiller formation.

Avis clients
3,8 / 5
Les avis clients sont issus des évaluations de fin de formation. La note est calculée à partir de l’ensemble des évaluations datant de moins de 12 mois. Seules celles avec un commentaire textuel sont affichées.
PIERRE OLIVIER M.
08/10/24
3 / 5

J’attendais plus de contenu orienté maitrise temps réel avec des pratiques de codage applicatif.Pedagogie OK mais manque d’un fil conducteur
FABIEN R.
01/10/24
5 / 5

La formation animée par C. Blaess est remarquablement construite. Les nombreux exemples permettent de comprendre quantité de notions. Grandes expertise et pédagogie.
ABDELKARIM T.
01/10/24
5 / 5

La formation était de grande qualité, avec un contenu clair et bien structuré. M. BLAESS a su allier théorie et pratique de manière fluide, tout en restant attentif aux questions, rendant l’apprentissage à la fois efficace et agréable.



Horaires
les cours ont lieu de 9h à 12h30 et de 14h à 17h30.
Les participants sont accueillis à partir de 8h45. Les pauses et déjeuners sont offerts.
Pour les stages pratiques de 4 ou 5 jours, quelle que soit la modalité, les sessions se terminent à 16h le dernier jour.

Dates et lieux
Sélectionnez votre lieu ou optez pour la classe à distance puis choisissez votre date.
Classe à distance

Dernières places
Date garantie en présentiel ou à distance
Session garantie