Choisissez votre langue
Formation Linux embarqué
+ de 400 000 professionnels sur la plateforme
Exclusif aux entreprises

Formation Linux embarqué

4,3

Maîtrisez chaque couche de Linux embarqué, du chargeur d'amorçage et du noyau au système de fichiers racine et aux pilotes de périphériques. Cette formation vous donne les compétences pratiques pour construire, configurer et déployer des systèmes Linux embarqués de qualité industrielle sur du matériel réel. Que vous débutiez dans l'ingénierie embarquée ou que vous souhaitiez approfondir votre expertise, il s'agit de la voie technique la plus complète disponible.

Dedika pour les apprenants

Ce que votre équipe va maîtriser:

Vous apprendrez à configurer des chaînes d'outils de compilation croisée, à configurer et à construire le noyau Linux, et à construire des systèmes de fichiers racine minimaux avec BusyBox. Vous travaillerez avec U-Boot pour gérer la séquence complète de démarrage embarqué et écrirez des pilotes de périphériques Linux pour les périphériques GPIO, I2C, SPI et pilotés par interruption. La formation couvre le projet Yocto et Buildroot pour la génération automatisée d'images, ainsi que des techniques d'optimisation système, notamment la réduction du temps de démarrage, la minimisation de l'empreinte mémoire et le renforcement de la sécurité. Les sujets avancés incluent Linux temps réel avec PREEMPT_RT, le débogage à distance avec GDB et les stratégies de mise à jour en direct pour les déploiements en production.

Comment votre équipe apprend de façon pratique Formation Linux embarqué

Comment votre équipe pratique Formation Linux embarqué

Des professionnels de ces entreprises apprennent sur Dedika

ActemiumFR
Nunner LogisticsNL
GT Constructora GeotécnicaCR
Sydel StarBR
Metrô de São PauloBR
Aguas AndinasCL
DSMIN
MeridianbetRS
CDHCN

Contenu du cours

8 Chapitres • 38 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

Fondamentaux de Linux et des systèmes embarqués

  • Leçon 1 • L'essentiel de la ligne de commande Linux

    Couvre la navigation dans le shell, la gestion des fichiers et les commandes de contrôle des processus. Ces compétences sont des prérequis pour tous les travaux pratiques du cours.

  • Leçon 2 • Architecture du noyau Linux et du système d'exploitation

    Explique le rôle du noyau Linux, sa conception monolithique et la séparation espace utilisateur/espace noyau. Fournit le contexte pour les travaux ultérieurs de configuration du noyau.

  • Leçon 3 • Concepts fondamentaux des systèmes embarqués

    Définit les systèmes embarqués, leurs contraintes et leurs différences avec les ordinateurs à usage général. Établit le vocabulaire utilisé tout au long du cours.

  • Leçon 4 • Aperçu du matériel embarqué

    Passe en revue les processeurs embarqués courants, les types de mémoire et les bus de données périphériques. Ancre les décisions logicielles dans les réalités matérielles rencontrées dans les chapitres suivants.

Chapitre 2Voir les détails

Configuration de la compilation croisée et de la chaîne d'outils

  • Leçon 1 • Validation et débogage de la chaîne d'outils

    Vérifie l'exactitude de la chaîne d'outils à l'aide de binaires de test et de l'inspection readelf. Empêche les erreurs de configuration courantes avant les constructions du noyau et du rootfs.

  • Leçon 2 • Architecture et composants de la chaîne d'outils

    Identifie binutils, le compilateur, la bibliothèque C et le débogueur comme composants de la chaîne d'outils. Explique les relations hôte-cible centrales pour la compilation croisée.

  • Leçon 3 • Compilation croisée d'applications

    Démontre la compilation de programmes C et C++ pour une cible en utilisant la chaîne d'outils croisée. Introduit les modèles de compilation croisée Makefile et CMake.

  • Leçon 4 • Construction d'une chaîne d'outils avec Crosstool-NG

    Guide la configuration et la construction d'une chaîne d'outils personnalisée à l'aide de Crosstool-NG. Produit un artefact de chaîne d'outils reproductible utilisé dans les laboratoires suivants.

Chapitre 3Voir les détails

Concepts du chargeur de démarrage et U-Boot

  • Leçon 1 • Procédures de flashage et de récupération

    Couvre l'écriture d'images de chargeur de démarrage sur le stockage NAND, NOR et eMMC. Inclut des stratégies de récupération lorsqu'une carte ne parvient pas à démarrer.

  • Leçon 2 • Configuration et construction d'U-Boot

    Parcourt la sélection d'un defconfig, la personnalisation des paramètres et la compilation croisée d'U-Boot. Produit un binaire de chargeur de démarrage prêt à être flashé sur la cible.

  • Leçon 3 • Shell U-Boot et scripts de démarrage

    Utilise le shell interactif d'U-Boot pour charger des images et définir des arguments de démarrage. Automatise le démarrage avec des scripts stockés dans l'environnement ou sur des supports de stockage.

  • Leçon 4 • Séquence de démarrage embarquée

    Retrace la séquence de mise sous tension du code ROM au chargeur de démarrage puis au noyau. Établit le modèle de démarrage en couches référencé dans tous les travaux ultérieurs liés au démarrage.

  • Leçon 5 • Architecture et sources d'U-Boot

    Explore la structure des répertoires d'U-Boot, les packages de support de carte et le système Kconfig. Prépare les apprenants à naviguer et à modifier le code source d'U-Boot en toute confiance.

Chapitre 4Voir les détails

Configuration et construction du noyau Linux

  • Leçon 1 • Gestion des sources et des versions du noyau

    Présente les versions kernel.org, les branches stables et les noyaux fournisseurs. Guide le clonage et la navigation efficace dans l'arborescence des sources du noyau.

  • Leçon 2 • Système de construction et sortie du noyau

    Explique le système Kbuild, les indicateurs de compilation croisée et les artefacts de sortie. Les apprenants construisent zImage, Image et les blobs d'arborescence de périphériques pour leur cible.

  • Leçon 3 • Configuration du noyau avec Kconfig

    Utilise menuconfig et les fichiers defconfig pour activer les pilotes et sous-systèmes requis. Enseigne la réduction systématique de la taille du noyau pour les cibles embarquées.

  • Leçon 4 • Modules du noyau et chargement dynamique

    Couvre les constructions de modules hors arborescence et dans l'arborescence, insmod, modprobe et depmod. Permet le chargement de pilotes à l'exécution sans reconstruire l'ensemble du noyau.

  • Leçon 5 • Déploiement et test du noyau

    Transfère l'image du noyau à la cible via TFTP ou carte SD et la démarre. Valide le succès du démarrage par l'analyse de la sortie de la console série.

Chapitre 5Voir les détails

Construction du système de fichiers racine

  • Leçon 1 • Construction d'un rootfs minimal avec BusyBox

    Configure et compile en croix BusyBox pour fournir les utilitaires de base dans un seul binaire. Produit un squelette de rootfs autonome pour la carte cible.

  • Leçon 2 • Gestion des bibliothèques et des dépendances

    Identifie les dépendances des bibliothèques partagées et les copie dans la zone intermédiaire du rootfs. Empêche les erreurs d'exécution de bibliothèque manquante sur la cible.

  • Leçon 3 • Systèmes init et démarrage du système

    Compare BusyBox init, SysVinit et systemd pour les cas d'utilisation embarqués. Configure les scripts inittab et rcS pour lancer les services au démarrage.

  • Leçon 4 • Structure et normes du système de fichiers racine

    Explique la norme de hiérarchie du système de fichiers et les répertoires obligatoires pour le démarrage de Linux. Fournit le plan structurel pour tous les exercices de construction de rootfs.

  • Leçon 5 • Empaquetage et déploiement du rootfs

    Crée des images cpio initramfs, ext4 et squashfs à partir du répertoire intermédiaire. Déploie et monte le rootfs sur la carte cible.

Chapitre 6Voir les détails

Systèmes de construction : Projet Yocto et Buildroot

  • Leçon 1 • Architecture et flux de travail de Buildroot

    Présente le flux de travail piloté par menuconfig de Buildroot pour générer la chaîne d'outils, le noyau et le rootfs. Démontre le prototypage rapide pour les projets à ressources limitées.

  • Leçon 2 • Concepts fondamentaux du projet Yocto

    Explique les couches, les recettes, BitBake et l'architecture du système de construction OpenEmbedded. Établit le modèle mental nécessaire à tout travail de personnalisation Yocto.

  • Leçon 3 • Création et personnalisation des couches Yocto

    Crée une couche personnalisée, écrit une recette et l'ajoute à une image Yocto. Démontre le modèle d'extensibilité utilisé dans les projets Yocto de production.

  • Leçon 4 • Personnalisation des packages Buildroot

    Crée des recettes de packages personnalisés et des superpositions pour ajouter des logiciels propriétaires à l'image. Étend Buildroot au-delà de son ensemble de packages par défaut.

  • Leçon 5 • Génération d'images et création de SDK

    Construit une image démarrable complète et un SDK de développement d'applications avec Yocto. Permet aux développeurs d'applications de cibler la plateforme sans reconstruire l'image.

Chapitre 7Voir les détails

Pilotes de périphériques et interfaces matérielles

  • Leçon 1 • Arborescence des périphériques et description du matériel

    Rédige des fichiers source d'arborescence de périphériques pour décrire la topologie du matériel au noyau. Lie les pilotes aux nœuds matériels à l'aide de chaînes compatibles et de propriétés.

  • Leçon 2 • Interruptions et DMA dans les pilotes

    Enregistre les gestionnaires d'interruptions et configure les transferts DMA au sein d'un pilote. Répond aux exigences de latence et de débit courantes dans les périphériques embarqués.

  • Leçon 3 • Développement de pilotes de périphériques de caractères

    Implémente un pilote de caractères avec les opérations open, read, write et ioctl. Démontre le modèle complet d'enregistrement du pilote et des opérations sur les fichiers.

  • Leçon 4 • Fondamentaux du modèle de pilote Linux

    Explique le modèle pilote-périphérique-bus, les kobjects et la représentation sysfs. Fournit le cadre conceptuel pour tout développement de pilote dans ce chapitre.

  • Leçon 5 • Interfaces de pilotes GPIO, I2C et SPI

    Utilise les API des sous-systèmes GPIO, I2C et SPI du noyau pour communiquer avec les périphériques. Couvre à la fois les méthodes d'accès au pilote dans le noyau et les méthodes d'accès utilisateur sysfs/chardev.

Chapitre 8Voir les détails

Optimisation du système et durcissement pour la production

  • Leçon 1 • Stratégies de mise à jour par liaison radio

    Implémente des mécanismes de mise à jour à double banque et delta pour des mises à jour sécurisées du micrologiciel sur le terrain. Garantit la capacité de retour en arrière et l'intégrité des mises à jour dans les déploiements de production.

  • Leçon 2 • Durcissement de la sécurité pour Linux embarqué

    Applique un rootfs en lecture seule, un démarrage sécurisé et un contrôle d'accès pour durcir le système. Réduit la surface d'attaque pour les produits embarqués connectés.

  • Leçon 3 • Optimisation de l'empreinte mémoire

    Réduit la taille du noyau, la taille du rootfs et l'utilisation de la mémoire à l'exécution par une analyse systématique. Applique des techniques de rognage, de compression et d'élagage de configuration.

  • Leçon 4 • Mesure et réduction du temps de démarrage

    Profile la séquence de démarrage à l'aide de bootchart et des horodatages du noyau pour trouver les goulots d'étranglement. Applique des optimisations ciblées pour atteindre des objectifs de démarrage inférieur à la seconde ou rapide.

  • Leçon 5 • Techniques de gestion de l'alimentation

    Configure la mise à l'échelle de la fréquence du CPU, les états de suspension et la coupure de l'alimentation des périphériques. Prolonge la durée de vie de la batterie et réduit la production thermique dans les conceptions sensibles à l'alimentation.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Ingénieur micrologiciel : prêt à passer des microcontrôleurs nus aux SoC basés sur Linux.

  • Diplômé en informatique : cherchant une profondeur pratique en systèmes embarqués au-delà des cours universitaires.

  • Développeur IoT : ayant besoin d'un contrôle complet de la pile sur les dispositifs où son logiciel s'exécute.

  • Passionné d'électronique : souhaitant comprendre ce qui se trouve à l'intérieur de ses cartes monocarte.

  • Ingénieur DevOps : s'étendant vers les cibles embarquées et les pipelines CI intégrés au matériel.

  • Personne en reconversion : passant du développement de bureau ou web au développement de produits embarqués.

Cours associés

FAQ

Qui est Dedika ?

Le certificat est-il valable en Côte d’Ivoire ?

Les cours sont-ils gratuits ?

Quelle est la charge de travail du cours ?

Comment sont les cours ?

Comment fonctionnent les cours ?

Quelle est la durée des cours ?

Quel est le coût ou le prix des cours ?

Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?

Cours PDF