Chapitre introductif
L’environnement Linux
Le projet GNU et l’univers du libre
Les normes Posix
Méthode de compilation
Obtenir le noyau
Le logiciel de support de cartes-mères (Board Support Package)
Le logiciel GIT et les outils de gestion de versions
Organiser les différentes sources
Les codes propres aux différentes architectures
Gérer et modifier les configurations avant compilation
Compiler le noyau
Compiler les modules
Gestion des options principales et du démarrage
Gérer les options de l’horloge interne
Configurer l’ordonnanceur
Gérer l’utilisation de la mémoire
Boot et FPE
Gérer le réseau
Gérer les systèmes de fichier
Gérer les pilotes
Choisir les options de démarrage
InitramfsARMoniE
Création des modules
Créer les premiers modules
Utiliser les macros basiques
Programmer les modules
Établir la communication avec le noyau
Gérer la mémoire de l’espace utilisateur
Créer un premier device
Utilisation de l’API du noyau Linux
Utiliser les fonctions basées sur la GNU C Lib
Accéder aux Entrées/Sorties
Allocation de la mémoire
Allocation des interruptions et Softirq
Gérer les files d’attente
Entrées/Sorties avec accès direct à la mémoire (DMA)
Structurer les données
Gérer la synchronisation
Outils et méthodes de débogage
Débogage du noyau
Débogage d’une application utilisateur