Linux embarqué
3 jours - 21 heures
Objectifs
Comprendre les principes des systèmes embarqués Linux et identifier les différentes solutions disponibles. Structurer sa construction d'un système embarqué. Découvrir les principes du développement d'applications pour le système embarqué.
Participants
Développeur souhaitant mettre en place du linux embarqué
Prérequis
Connaissance de Linux et du langage C
Pédagogie
La pédagogie est basée sur le principe de la dynamique de groupe avec alternance d'apports théoriques, de phases de réflexion collectives et individuelles, d'exercices, d'études de cas et de mises en situations observées. Formation / Action participative et interactive : les participants sont acteurs de leur formation notamment lors des mises en situation car ils s'appuient sur leurs connaissances, les expériences et mettront en œuvre les nouveaux outils présentés au cours de la session.
Public Visé
Collaborateurs - Développer ses compétences, s’affirmer comme expert dans son domaine, sécuriser son parcours professionnel ; Entreprises ou organisations - Accélérer les évolutions de carrière des collaborateurs, augmenter l’efficacité et l’employabilité des équipes… ; Demandeur d’emploi - Développer son employabilité, favoriser sa transition professionnelle...
Profil de l'intervenant
Consultant-formateur expert. Suivi des compétences techniques et pédagogiques assuré par nos services.
Accessibilité
Moyens techniques
Encadrement complet des stagiaires durant la formation. Espace d’accueil, configuration technique des salles et matériel pédagogique dédié pour les formations en centre. Remise d’une documentation pédagogique papier ou numérique à échéance de la formation.
Méthodes d'évaluation des acquis
Un contact téléphonique est systématiquement établi avec le stagiaire ou la personne chargée de son inscription afin de définir le positionnement. Si besoin, un questionnaire est adressé pour valider les prérequis en correspondance et obtenir toute précision nécessaire permettant l’adaptation de l’action. Durant la formation, des exercices individuels et collectifs sont proposés pour évaluer et valider les acquis du stagiaire. La feuille d’émargement signée par demi-journée ainsi que l’évaluation des acquis sont adressées avec la facture.
Programme
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é
Les 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
Éclipse et le CDT
- Environnement de développement intégré
- Création de projet, compilation et débogage
- Compilation croisée avec Éclipse
Compilation du noyau Linux
- Principe
- Versions du noyau Linux
- Sélection et application d'un patch
- Configuration et compilation pour une cible embarquée
Installation sur cible
- Transfert de l'image du noyau
- Configuration du bootloader ou de l'émulateur
- Paramètres de démarrage du kernel
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
- Préparation d'un système de fichiers minimal et boot avec processus init personnel
Utilitaires système
- Busybox, outil incontournable de l'embarqué
- Scripts de démarrage
- Édition des liens, bibliothèques statiques ou dynamiques
- Paramétrage et compilation de Busybox
Services réseau
- Configuration des interfaces réseau
- Utilitaires réseau essentiels
- Affectation d'adresse statique ou dynamique (DHCP)
- Routage
- Installation des serveurs Telnet et FTP
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
- Débogage à distance et optimisation d'applications
- Création de bibliothèques
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.
Services réseau supplémentaires
- Connexion sécurisée avec SSH, transferts de fichiers par SCP
- Serveur web HTTP avec script CGI
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