Linux embarqué avec Ac6 System Workbench
Objectifs
|
- Support de cours imprimé (en anglais)
- Un PC Linux pour deux stagiaires.
- Une plateforme cible pour deux stagiaires
- Bonne maîtrise de la programmation C
- Connaissance de la programmation utilisateur sous Linux (voir notre cours D0 - Programmation en mode utilisateur Linux)
- De préférence, connaissance du kernel Linux et de la programmation de drivers (voir notre cours D3 - Drivers Linux)
- Tout ingénieur ou technicien en systèmes embarqués possédant les prérequis ci-dessus.
- Les prérequis sont vérifiés avant l'entrée en formation, sur la base des prérequis publiés sur cette fiche.
- Pendant la formation, les acquis sont évalués en continu : quiz de fin de séquence et observation directe du formateur.
- À l'issue de la formation, chaque participant reçoit une attestation de fin de formation.
Plan du cours
- Historique de Linux et gestion des versions
- Architecture du système Linux
- Processus et MMU
- Appels système
- Bibliothèques partagées
- Les composants de Linux
- Toolchain
- Bootloader
- Kernel
- Système de fichiers racine
- Les distributions Linux
- Les paquets Linux
- Les différentes licences utilisées par Linux (GPL, LGPL, etc)
- Les bootloaders (UBoot, Redboot, barebox)
- Les bibliothèques optimisées (eglibc, uClibc)
- Les toolchains
- Les interfaces graphiques embarquées
- Busybox
- Les distributions embarquées
- Commerciales
- Standard
- Outils pour construire des distributions sur mesure
- Présentation
- Eclipse
- Kernel et modules
- Plateformes et systèmes de fichiers racine
- L'architecture du système de build
- Construire des paquets individuels
- Construire des plateformes
- Construire des systèmes de fichiers racine
- Créer un programme Linux
- Créer une bibliothèque
- Bibliothèque statique
- Bibliothèque partagée
- Déboguer sur la cible
- Utiliser une connexion SSH
- Déboguer des bibliothèques partagées
- Introduction à U-Boot
- Démarrer la carte avec U-Boot
- Démarrer depuis la NOR
- Démarrer depuis la NAND
- Démarrer depuis l'eMMC
- Les variables d'environnement d'U-Boot
- Variables définies par l'utilisateur
- Variables prédéfinies
- Substitution de variables
- Le shell minimal d'U-Boot
- Écrire des scripts dans des variables
- Exécuter des scripts
- Utiliser des variables dans les scripts : le motif set-script
- Les principales commandes d'U-Boot
- Démarrer un OS
- Accéder aux mémoires flash
- Accéder aux systèmes de fichiers (NFS, FAT, EXTx, JFFS2…)
- Le shell complet d'U-Boot
- Structure d'un script
- Instructions de contrôle de flux (if, for…)
- Démarrer Linux
- Les paramètres du kernel Linux
- La séquence de démarrage de Linux
- Construire et installer U-Boot avec son système de build natif
- Construire U-boot avec System Workbench
- Le système de build de Linux
- Télécharger le code source stable
- Récupérer une archive tarball
- Utiliser GIT
- Configurer le kernel
- Compiler le kernel et ses modules
- Modules livrés dans l'arbre des sources
- Modules hors arbre des sources
- Installer le kernel et les modules
- Projets kernel
- Créer un projet kernel
- Choisir l'architecture et la configuration
- Personnaliser la configuration
- Compiler le kernel
- Projets de modules
- Créer un projet de module
- Le relier à un projet kernel
- Créer et construire des modules
- Les paquets
- Outils pour construire des paquets (gcc, Makefile, pkg-config…)
- Autotools
- Compiler de façon croisée un paquet avec les autotools
- Les applications tout-en-un
- Busybox, les utilitaires de base
- Dropbear : communications chiffrées (ssh)
- Démarrer automatiquement un programme au boot
- Les systèmes d'initialisation (busybox init, system V init)
- Créer un projet de plateforme
- Importer une plateforme préconfigurée
- Créer une plateforme de zéro
- Configurer la plateforme
- Répertoires de sources et d'installation
- Lien vers un rootfs cible
- Configurations de build
- Peupler l'environnement de build
- Importer des paquets dans l'environnement de build
- Construire des paquets individuels
- Construire la plateforme complète
- Ajouter des paquets à une plateforme
- Depuis une bibliothèque
- Depuis un projet Eclipse existant
- Créer un nouveau paquet
- Spécifier les sources
- Patcher les sources officielles
- Ajouter des ressources propres au paquet
- Ajouter des directives de configuration du paquet
- Les interfaces de stockage
- Périphériques bloc
- MTD
- Les mémoires flash et les MTD de Linux
- Flashs NOR
- Flashs NAND
- Flashs ONENAND
- Les différents formats de systèmes de fichiers pour flash
- JFFS2, YAFFS2, UBIFS
- Systèmes de fichiers en lecture seule
- CRAMFS, SQUASHFS
- Les systèmes de fichiers Linux standard
- Ext2/3/4, FAT, NFS
- Ramdisks et initrd
- Créer un initramfs
- Démarrer via un initramfs
- Choisir les bons formats de système de fichiers
- Flasher le système de fichiers
- Construire manuellement votre système de fichiers racine
- Noeuds de périphériques, programmes et bibliothèques
- Fichiers de configuration (réseau, udev, …)
- Installer les modules
- Rechercher et installer les bibliothèques nécessaires
- Tester la cohérence et la complétude du système de fichiers
- La gestion de paquets
- ipkg
- Créer un projet rootfs
- Créer la structure du rootfs
- Ajouter des fichiers à la structure de base
- Éditer les fichiers de configuration standard
- Systèmes de fichiers
- Initialisation
- Lancement des applications
Plus d'information
Pour vous enregistrer ou pour toute information supplémentaire, contactez nous par email à l'adresse info@ac6-formation.com.
Les inscriptions aux sessions de formation sont acceptées jusqu'à une semaine avant le début de la formation. Pour une inscription plus tardive nous consulter
Vous pouvez aussi remplir et nous envoyer le bulletin d'inscription
Ce cours peut être dispensé dans notre centre de formation près de Paris ou dans vos locaux, en France ou dans le monde entier.
Les sessions inter-entreprises programmées sont ouvertes dès deux inscrits. Sous condition d'un dossier complet, les inscriptions sont acceptées jusqu'à une semaine avant le début de la formation.
Dernière mise à jour du plan de cours : 2 juillet 2026
L'inscription à nos formations est soumise à nos Conditions Générales de Vente
Sur le même sujet :
Yocto ou Buildroot : comment choisir pour votre projet Linux embarqué