Formation BSP UBoot et Linux embarqué, construire son propre système


Formation BSP UBoot et Linux embarqué, construire son propre système

Catalogue : Robotique, systèmes embarqués, IoT



Linux embarqué
• Licences, implications pour l'embarqué. Principe des drivers.
• Composant d'un système Linux. Boot d'un système embarqué.
• Outils de développement. Chaîne de compilation croisée
Travaux pratiques
Compilation, installation et test de Qemu.
Build Systems
• Présentation de Buildroot.
• Construction d'une chaîne de cross-compilation (Crosstool-NG).
• Construction d'un système embarqué avec Buildroot.
• Présentation du Yocto Project.
Travaux pratiques
Création d'une chaîne de cross-compilation. Production d'une image pour Raspberry Pi.
Noyau Linux
• Fonctionnalités du noyau. Modèle de développement.
• Configuration et compilation du noyau.
• Application de patchs.
• Transfert de l'image du noyau. Paramètres de démarrage du kernel.
• Types de système de fichiers. Formatage et préparation d'une arborescence.
Travaux pratiques
Compilation et test d'un noyau (Buildroot, émulateur Arm, Raspberry Pi). Application d'un patch.
Bootloader et Root Filesystem
• Les bootloaders : Lilo et Grub. U-Boot, barebox...
• Installation de U-Boot.
• Boot par TFTP et par NFS.
• Formats pour disques et mémoire flash. Systèmes de fichiers spéciaux.
• Organisation des partitions. Gestion de versions.
Travaux pratiques
Test de Grub. Compilation et test de U-boot sur Raspberry.
Espace utilisateur
• Busybox : présentation, configuration.
• Configuration du réseau et des serveurs . Authentification des utilisateurs et connexion distante.
Travaux pratiques
Compilation et installation de Busybox.
Code métier
• Outils de développements : compilateurs, interpréteurs, IDE.
• Débogueur, profileur, couverture de code.
• Bibliothèques statiques et dynamiques.
• Gestion de mémoire sous Linux.
Travaux pratiques
Utilisation d'Eclipse, de gdbserver, de Gprof et de Gcov.
Drivers et modules spécifiques
• Principe des drivers : intégration de modules externes.
• Principes de la programmation noyau.
• Aperçu de la programmation de drivers en mode caractère.
Travaux pratiques
Compilation et chargement de module externe.
Multiprocesseurs et temps réel
• SMP, multicœurs, hyperthreading. Gestion des tâches et des interruptions.
• Temps réel : principes. Temps-réel souple.
• Amélioration avec le patch PREEMPT_RT.
• Temps-réel strict : Présentation de Xenomai.
Travaux pratiques
Configuration des emplacements des tâches et des interruptions.

 

Fiche de la formation



 Cible :

Architecte ou ingénieur devant porter Linux sur un nouveau matériel ou étendre un système embarqué.


 Prérequis :

Bonnes connaissances du langage C et du système Linux.


 Durée : 5 jours

 Type : Stage pratique


 Contactez-nous