Accueil > Windows/Linux/Unix/Mac > Linux Industriel, Temps Réel et Embarqué
Formation #OS105

Formation Linux Industriel, Temps Réel et Embarqué

Durée : 5 jours

Code : OS105

Si vous avez un besoin URGENT et que vous souhaitez une date de formation plus proche que les sessions programmées (minimum 15 à 20 jours ouvrés à date de votre demande)

Objectifs

  • Comprendre l'architecture d'un système embarqué sous Linux
  • Etre capable de construire un système Linux complet
Programme

Partie 1 : Linux en environnement industriel

1/ Architecture de Linux
  • Linux : Histoire. Gestion de version
  • Les diverses licences utilisées par Linux (GPL, LGPL, etc)
  • Distributions Linux
  • Architecture et modularité de Linux
2/ Les chaînes de compilation croisée
  • Chaînes de compilation croisée pré-compilées
  • Outils de génération de chaînes de compilation croisée : Crosstool-ng, Buildroot
  • Compilation manuelle de chaîne de compilation croisée
3/ Les outils Linux pour l'embarqué
  • Les bootloaders (Uboot, Redboot, barebox)
  • Les librairies adaptée à l'embarqué (eglibc, uClibc)
  • Les IHM adaptées à l'embarqué
4/ Outils libres de développement embarqué
  • Outils GNU : Compilation, débogage et mise au point
  • Platesformes hôte et cible, processeurs et émulateur
5/ Le bootloader U-Boot
  • Introduction à U-Boot
  • Booter la carte à travers U-Boot
  • Booter depuis la NOR
  • Booter depuis la NAND
  • Booter depuis la eMMC
  • Variables d'environnement d'U-Boot
  • Variables définies par l'utilisateur
  • Variables prédéfinies
  • Substitution de variable
  • Le shell U-Boot minimal
  • Ecrire des scripts dans des variables
  • Exécuter des scripts
  • Utiliser des variables dans des scripts : le patron set-script
  • Principales commandes d'U-Boot
  • Booter un OS
  • Accéder aux flashs
  • Accéder aux systèmes de fichier (NFS, FAT, EXTx, JFFS2…)
  • Le shell U-Boot complet
  • Structure du script
  • Instructions de contrôle (if, for…)
6/ Eclipse et le CDT
  • Environnement de développement intégré
  • Création de projet, compilation et débogage
  • Compilation croisée avec Éclipse

Partie 2 : L'espace noyau

1/ Compiler le noyau linux
  • Principe de compilation
  • Les versions du noyau Linux
  • Sélectionner et appliquer un patch
  • Configurer et compiler pour une cible embarquée
2/ Installer sur cible
  • Transfert de l’image du noyau
  • Configuration du bootloader ou de l’émulateur
  • Paramètres de démarrage du kernel
3/ 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

Partie 3 : Espace utilisateur

1/ Utilitaires système
  • Busybox
  • Scripts de démarrage
  • Édition des liens, bibliothèques statiques ou dynamiques
2/ Services réseau
  • Configurer les interfaces réseau
  • Utilitaires réseau essentiels
  • Affecter l'adresse statique ou dynamique (DHCP)
  • Routage
3/ 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

Partie 4 : Aspects avancés

1/ Paramétrage spécifique
  • Configurer l’ordonnanceur
  • Affecter des tâches et des interruptions sur les CPU
  • Paramétrer la mémoire virtuelle
2/ Services réseau supplémentaires
  • Serveur web HTTP avec script CGI
3/ Industrialisation et extensions
  • Ajuster l’horloge système avec NTP et PTP
  • Superviser à distante par agent SNMP
  • Mise à jour, firmware
  • Développer la cible
  • Utiliser la GlibC
Approche Pédagogique

Approche Pédagogique

  • Pédagogie très opérationnelle fondée sur l'alternance entre théorie et pratique
  • Cas pratiques
  • Remise d’outils
  • Echanges d’expériences
Public Cible

Personnes Visées

  • Développeurs Linux/Unix