Formation - Concevoir un système Linux embarqué
Qualiopi
Objectifs pédagogiques
- Cette formation fait l'objet d'une évaluation formative.
Programme de la formation
1 - 1ère partie : Linux en environnement industriel
2 - Linux, logiciels libres, licences
- Présentation des concepts, des principes et des pratiques
- Projet Gnu
- Noyaux et distributions Linux
- Principes des GPL, LGPL, BSD... et implications pour l'embarqué
3 - Outils libres de développement embarqué
- Outils Gnu - Compilation, débogage et mise au point
- Plates-formes hôte et cible, processeurs et émulateur
- Création d'une chaîne croisée avec Buildroot
4 - Éclipse et le CDT
- Environnement de développement intégré
- Création de projet, compilation et débogage
- Compilation croisée avec Éclipse
5 - Travaux pratiques
- Utilisation de GCC, effets des différentes options
- Débogage dynamique et post-mortem avec GDB
- Compilation et débogage de projet sous Eclipse
- Création et utilisation d'une chaîne de compilation pour processeur Arm
6 - 2ème partie : L'espace noyau
7 - Compilation du noyau Linux
- Principe
- Versions du noyau Linux
- Sélection et application d'un patch
- Configuration et compilation pour une cible embarquée
8 - Installation sur cible
- Transfert de l'image du noyau
- Configuration du bootloader ou de l'émulateur
- Paramètres de démarrage du kernel
9 - Système de fichiers
- Types de système de fichiers
- Formatage et préparation d'une arborescence
- Fichiers spéciaux des périphériques
- Principe du processus init
10 - Travaux pratiques
- Application d'un patch (Linux-rt) sur les sources du noyau
- Configuration et compilation d'un noyau Linux pour cible Arm
- Préparation d'un système de fichiers minimal et boot avec processus init personnel
11 - 3ème partie : Espace utilisateur
12 - Utilitaires système
- Busybox, outil incontournable de l'embarqué
- Scripts de démarrage
- Édition des liens, bibliothèques statiques ou dynamiques
13 - Services réseau
- Configuration des interfaces réseau
- Utilitaires réseau essentiels
- Affectation d'adresse statique ou dynamique (DHCP)
- Routage
14 - Débogage et mise au point
- Compilation croisée d'applications personnalisées, de bibliothèques statiques et dynamiques
- Débogage distant avec GDB et Eclipse
- Tests en couverture et profiling
15 - Travaux pratiques
- Paramétrage et compilation de Busybox
- Personnalisation des scripts de démarrage
- Installation des services SSH et SCP
- Débogage à distance et optimisation d'applications
- Création de bibliothèques
16 - 4ème partie : Aspects avancés
17 - Paramétrage spécifique
- Configuration de l'ordonnanceur
- Affectation des tâches et des interruptions sur les CPU
- Paramétrage de la mémoire virtuelle
18 - Services réseau supplémentaires
- Serveur web HTTP avec script CGI
19 - Industrialisation et extensions
- Ajustement d'horloge système avec NTP et PTP
- Supervision distante par agent SNMP
- Mise à jour, firmware
- Développement sur la cible
- Utilisation de la GlibC
20 - Travaux pratiques
- Vérification des paramètres temps-réel
- Saturation mémoire et désactivation d'overcommit
- Compilation et test de Dropbear, Boa, PTP
- Comparaison de Crosstool-NG et Buildroot
21 - Conclusion
- Discussions libres sur l'ensemble des thèmes abordés
- Travaux pratiques : expérimentations libres suivant les demandes des participants

Proposé par
IB Cegos
"Formations aux technologies et métiers du Numérique"
Durée
3 jours (21 heures)
Localisation
Partout en France

Proposé par
IB Cegos
