Choisissez votre langue
Formation Linux embarqué
Plus de 2 millions d'étudiants dans le monde

Formation Linux embarqué

4,3

Maîtrisez chaque couche de l'embarqué Linux, du chargeur d'amorçage et du noyau au système de fichiers racine et aux pilotes de périphérique. Ce cours vous donne les compétences pratiques nécessaires pour construire, configurer et déployer des systèmes Linux embarqués de qualité production sur du matériel réel. Que vous débutiez dans l'ingénierie embarquée ou que vous souhaitiez perfectionner votre expertise, c'est le parcours technique le plus complet disponible.

Dedika pour les entreprises

Ce que vous allez apprendre:

Vous apprendrez à configurer des chaînes de compilation croisées, à configurer et à construire le noyau Linux, et à construire des systèmes de fichiers racines minimaux à l'aide de BusyBox. Vous travaillerez avec U-Boot pour gérer la séquence de démarrage embarquée complète et écrirez des pilotes de périphérique Linux pour les périphériques GPIO, I2C, SPI et pilotés par interruption. Le cours couvre Yocto Project et Buildroot pour la génération d'images automatisée, 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 durcissement de la sécurité. Les sujets avancés incluent le 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 vous étudiez de façon pratique Formation Linux embarqué

Comment vous pratiquez Formation Linux embarqué

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre propre activité et aux besoins spécifiques de votre entreprise.

Cliquez ici

Contenu du cours

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

Chapitre 1Voir les détails

Linux et Fondamentaux des Systèmes Embarqués

  • Leçon 1 • Commandes Essentielles en 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 • Noyau Linux et Architecture 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 par rapport aux ordinateurs généralistes. Établit le vocabulaire utilisé tout au long du cours.

  • Leçon 4 • Présentation du Matériel Embarqué

    Passe en revue les processeurs, types de mémoire et bus périphériques courants pour l'embarqué. 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 Chaîne de Compilation Croisée

  • Leçon 1 • Validation et Débogage de la Chaîne de Compilation Croisée

    Vérifie l'exactitude de la chaîne de compilation croisée à 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 d'une Chaîne de Compilation Croisée

    Identifie les composants d'une chaîne de compilation croisée : binutils, compilateur, bibliothèque C et débogueur. Explique les relations hôte-cible essentielles à la compilation croisée.

  • Leçon 3 • Compilation Croisée d'Applications

    Montre comment compiler des programmes C et C++ pour une cible en utilisant la chaîne de compilation croisée. Introduit les modèles de compilation croisée avec Makefile et CMake.

  • Leçon 4 • Construction d'une Chaîne de Compilation Croisée avec Crosstool-NG

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

Chapitre 3Voir les détails

Concepts du Chargeur d'Amorçage et U-Boot

  • Leçon 1 • Procédures de Programmation et de Récupération

    Couvre l'écriture d'images de chargeur d'amorçage sur la mémoire 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

    Explique comment sélectionner une defconfig, personnaliser les réglages et compiler en croisé U-Boot. Produit un binaire de chargeur d'amorçage prêt à être programmé sur la cible.

  • Leçon 3 • Shell U-Boot et Scripts d'Amorçage

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

  • Leçon 4 • Séquence d'Amorçage Embarquée

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

  • Leçon 5 • Architecture et Code Source 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 étudiants à 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 des fournisseurs. Guide le clonage et la navigation dans l'arborescence source du noyau efficacement.

  • Leçon 2 • Système de Construction du Noyau et Sorties

    Explique le système Kbuild, les flags de compilation croisée et les artefacts de sortie. Les étudiants construisent zImage, Image et les blobs d'arbre 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 arbre et dans l'arbre, insmod, modprobe et depmod. Permet le chargement de pilotes à l'exécution sans reconstruire le noyau complet.

  • Leçon 5 • Déploiement et Test du Noyau

    Transfère l'image du noyau vers la cible via TFTP ou carte SD et la démarre. Valide le succès de l'amorçage 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 croisé BusyBox pour fournir les utilitaires principaux dans un seul binaire. Produit un squelette de rootfs autonome pour la carte cible.

  • Leçon 2 • Gestion des Bibliothèques et 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 dues aux bibliothèques manquantes sur la cible.

  • Leçon 3 • Systèmes d'Init et Démarrage du Système

    Compare l'init BusyBox, SysVinit et systemd pour les cas d'usage 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 le standard de hiérarchie du système de fichiers (FHS) et les répertoires obligatoires pour le démarrage 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 de compilation croisée, 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 (layers), les recettes (recipes), BitBake et l'architecture du système de construction OpenEmbedded. Établit le modèle mental requis pour tout travail de personnalisation Yocto.

  • Leçon 3 • Création et Personnalisation de 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 en production.

  • Leçon 4 • Personnalisation de Paquets Buildroot

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

  • Leçon 5 • Génération d'Image et Création de SDK

    Construit une image amorçable 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 • Arbre de Périphériques et Description Matérielle

    Écrit des fichiers source d'arbre de périphériques (DTS) pour décrire la topologie matérielle 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 dans 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 de pilote et d'opérations sur les fichiers.

  • Leçon 4 • Fondamentaux du Modèle de Pilotes 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 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 pilotes dans le noyau et les méthodes d'accès utilisateur via sysfs/chardev.

Chapitre 8Voir les détails

Optimisation du Système et Durcissement pour la Production

  • Leçon 1 • Stratégies de Mise à Jour Over-the-Air (OTA)

    Implémente des mécanismes de mise à jour à double banque et delta pour des mises à jour sécurisées du firmware sur le terrain. Garantit la capacité de retour arrière et l'intégrité des mises à jour dans les déploiements en 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 des 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 mémoire à l'exécution par une analyse systématique. Applique des techniques d'élimination des symboles, 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 en utilisant bootchart et les horodatages du noyau pour trouver les goulots d'étranglement. Applique des optimisations ciblées pour atteindre des cibles de démarrage rapide ou inférieur à la seconde.

  • Leçon 5 • Techniques de Gestion de l'Alimentation

    Configure la gestion de la fréquence du CPU, les états de suspension et la coupure de l'alimentation des périphériques. Prolonge l'autonomie de la batterie et réduit la dissipation thermique dans les conceptions sensibles à la consommation.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Ingénieur firmware : prêt à passer des microcontrôleurs nus aux SoC sous 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ù s'exécute son logiciel.

  • Passionné d'électronique : voulant comprendre ce qui se trouve à l'intérieur de ses cartes mono-carte.

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

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

Ce que disent nos apprenants

Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

Formations principales

FAQ

Qui est Dedika ?

Le certificat est-il valable en Algérie ?

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