Logiciels Libres et Systèmes Embarqués


Partie II. Travaux et Résultats

Table des matières

3. Installation des outils de développement GNU
3.1. Introduction
3.2. Mise en place
3.3. Les fichiers d'en-tête
3.3.1. Fichier d'en-tête du noyau Linux
3.3.2. Fichier d'en-tête de la GlibC
3.4. Binutils
3.5. GCC d'amorce
3.6. GlibC uniquement
3.7. GCC complet
3.8. Programmes de la GlibC
3.9. Test
3.10. Résultats et Conclusion
4. Portage du chargeur U-Boot
4.1. Introduction
4.2. Principe de U-Boot
4.3. Fonctionnement Simple
4.3.1. Configuration de U-Boot
4.3.2. Modification des sources
4.4. Support de l'Ethernet
4.4.1. Configuration de U-Boot
4.4.2. Modification des sources
4.5. Support de la CompactFlash
4.5.1. Configuration de U-Boot
4.5.2. Modification des sources
4.6. Support de la Flash
4.6.1. Configuration de U-Boot
4.6.2. Modification des sources
4.7. Charger U-Boot
4.8. Débogage
4.8.1. Machine Check Exception
4.8.2. Compilation avec des outils récents
4.8.3. Désactivation du DCR
4.9. Résultats et conclusion
5. Portage du noyau Linux
5.1. Introduction
5.2. Evaluation des travaux disponibles
5.3. Mise en place
5.3.1. Obtenir les sources du noyau
5.3.2. Support de la plateforme Virtex
5.4. Amorce du noyau Linux
5.5. Configuration du processeur
5.5.1. Initialisation temporaire de la MMU
5.5.2. Adaptation au processeur
5.5.3. Initialisation de la plateforme
5.5.4. Initialisation définitive de la MMU
5.6. Initialisation du noyau Linux
5.6.1. Initialisation de la carte
5.6.2. Parcours de la ligne de commande
5.6.3. Initialisation du contrôleur d'interruptions
5.7. Pilote du contrôleur d'interruptions
5.8. Pilote du contrôleur série
5.9. Pilote de l'interface réseau XEmac
5.10. Pilote de l'interface CompactFlash
5.11. Pilote de l'interface Flash
5.12. Contraintes sur l'architecture
5.13. Débogage
5.13.1. Niveau d'optimisation
5.13.2. Machine Check Exception
5.14. Conclusion et résultats
6. Création d'une distribution Linux
6.1. Introduction
6.2. Synthèse de l'évaluation
6.2.1. Bibliothèques C
6.2.2. Collections d'outils
6.3. µClibC
6.3.1. Présentation
6.3.2. Installation
6.3.3. Outils de développement
6.4. Système minimal
6.4.1. Le système de fichiers racine
6.4.2. Le programme "init"
6.4.3. Mise en place
6.5. BusyBox
6.5.1. Mise en place
6.6. Ajout de bibliothèques
6.6.1. Exemple avec NCurses-5.4
6.6.2. Exemple avec Zlib-1.2.2
6.7. Distribution par NFS
6.8. Conclusion et résultats