Vous apprendrez à
- Comprendre et maîtriser la constitution et le fonctionnement d'une distribution Linux embarqué
- Compiler un noyau Linux en fonction d'une configuration matérielle
- Construire une distribution Linux embarqué autour de ce noyau
- Prendre en main les outils de développement croisé
- Prendre en main µCLinux
- Approcher le développement des modules du noyau Linux de programmation
À qui s'adresse cette formation
Cette formation est destinée aux ingénieurs de développement produits qui souhaitent
acquérir une compétence sur Linux en environnement industriel contraint. Une expérience
UNIX ou Linux en tant qu'utilisateur est un pré-requis. Une expérience de développement
UNIX ou Linux est un plus.
Travaux pratiques
- Installation de la distribution Fedora Core 5
- Configuration et compilation du noyau Linux (plate-forme x86)
- Configuration et compilation de BusyBox
- Intégration d'une distribution Linux basée sur les composants précédents
- Installation d'une chaîne de compilation croisée x86/ ARM9 (CROSSTOOL)
- Mise au point de modules (gdb/kgdb)
- Evaluations de performances temps réel
Contenu détaillé
Rappels sur Linux
- Historique
- Concepts du logiciel libre
- Distributions Linux
- Sources d'information
Distribution Fedora Core 5
- Prise en main du système
- Compilation d'un noyau "standard"
Création de systèmes embarqués
Généralités sur les systèmes embarqués
- Champs d'application
- Systèmes existants
- Contraintes
- Temps réel et temps partagé
- Avantages et inconvénients du logiciel libre pour l'embarqué
Création du système sur x86
- Création de la partition dédié: EXT3
- Noyau et ocessus "init"
- Création d'un "init" minimal
- Gestion des bibliothèques: utilisation de mklibs
- Création des entrées de /dev
- Ajout d'un interpréteur de commandes
- Création d'un fichier inittab et d'un script de démarrage
Utilisation de Busybox
- Principes
- Compilation sur x86
- Script rcS
- Configuration réseau
- Gestion des utilisateurs
Compilation croisée
- Principe de compilation croisée
- Exemples d'outils: ELDK et CROSSTOOL
- Test sur ARM9
- Bootloader U-boot
- Détails sur la chaîne de compilation GNU
- Création d'un système Linux ARM9 à base de BusyBox
- Utilisation de TFTP et NFSROOT
- Mise au point d'une application par gdb/gdbserver
Interfaces graphiques
- X Window System (Tiny-X)
- "Frame buffer" de Linux
- DirectFB et Fusion
- Qt/Embedded
- GTK/Embedded
- Nano-X
Présentation de µCLinux (micro-C-Linux)
- Champs d'application
- Avantages et inconvénients
- Installation sur ARM7
- Chaîne de compilation
- Exemple de développement "Hello World"
Techniques liées à Linux embarqué
Solutions temps-réel
- Noyau préemptif 2.6
- RTLinux
- RTAI
- Xenomai
Introduction au développement noyau
- L'API des modules Linux
- Le fichier Makefile
- Création d'un exemple "Hello World"
- Installation d'un module
- Dépendance des modules
- Utilisation de /proc
- Mise au point du noyau et des modules par gdb/kgdb
|
<< UNIX, Linux et logiciels libres
Linux est une marque déposée de Linus Torvalds. OS4I, Division Solutions Industrielles de la SSLL Open Wide.