LINUX - Programmation noyau, Device drivers, BSP

Transcription

LINUX - Programmation noyau, Device drivers, BSP
Descriptif de Formation - Ref:003154A - 21/02/2017
LINUX - Programmation noyau, Device drivers, BSP
4 jours
Comprendre la gestion de la mémoire par Linux
OBJECTIFS
Comprendre comment les device drivers sont connectés au
Comprendre les mécanismes utilisés dans le noyau Linux
Comprendre comment ces mécanismes sont implémentés sur
noyau Linux et programmer ces device drivers en utilisant les
mécanismes vus précédemment
les plateformes PowerPC
Comprendre la séquence de boot de Linux et son
FORMATIONS
CONNEXES
implémentation sur les PowerPC
Programmer des drivers et les intégrer dans le noyau Linux.
Le cours est divisé en présentations et travaux pratiques. Les
LINUX - Concepts fondamentaux
travaux pratiques permettent de mieux comprendre le contenu
LINUX - Programmation utilisateur
des présentations
RTOS - Systèmes d'exploitation temps-réel et embarqués
Configurer et construire une image noyau Linux
Architectures Multicœurs
Comprendre les différents types d'images noyau et de root
Langage C pour les applications temps-réel et embarquées
filesystems
Comprendre la séquence de boot du noyau Linux et le code de
bootstrap
PARTENAIRES
Démarrer une application après le boot du noyau
Comprendre l'implémentation et l'initialisation Linux sur les
processeurs PowerPC
Créer et charger des modules dans le noyau
PRÉREQUIS
Utiliser les outils de debug pour debugger le noyau
Comprendre les différents mécanismes de synchronisation et
Expérience en programmation C
d'exclusion mutuelle du noyau et leur implémentation sur les
Connaissance de base des systèmes d'exploitation et des
PowerPC
techniques de debug
Comprendre les exceptions et les interruptions et leur
Connaissance des mécanismes des processeurs ou des micro-
implémentation sur les PowerPC
contrôleurs
Connecter les gestionnaires d'interruption et d'exception et
utiliser les mécanismes "bottom half " pour planifier les
fonctions
CONFIGURATIONS
Utiliser les mécanismes "timer" pour attendre un délai, planifier
les tâches périodiques, les événements datés
Les travaux pratiques sont fait sous un environnement Linux
Licences
CHAPITRES
Sources Noyau
INSTALLATION, COMPILATION ET BOOT DU NOYAU LINUX
INTRODUCTION
Configuration noyau
Espace Utilisateur, Espace Noyau
Construction noyau
BSP et Device Drivers
Images noyau
MVD Training - 106 avenue des guis - 31830 Plaisance du Touch - France
Tel : +33 (0) 5 62 13 52 32 - Fax : +33 (0) 5 61 06 72 60 - www.mvd-training.com
SIRET : 510 766 066 00029 - Identifiant TVA : FR 74510766066 - NAF : 8559A
Déclaration d’activité enregistrée sous le n° 73 3105366 31 auprès du Préfet de région de Midi-Pyrénées
1
Descriptif de Formation - Ref:003154A - 21/02/2017
Gestion des exceptions
La Bootline
GESTION DES TIMINGS
Le Root Filesystem
Demarrage d'une application après le boot du noyau Linux
Timers Linux
Attente pendant un délai
TRAVAUX PRATIQUES
Configuration et compilation du noyau Linux
Timestamping
TRAVAUX PRATIQUES
Boot du noyau sur la plateforme cible
Lancement d'una application au boot
Ecriture d'un gestionnaire d'interruption, connexion et activation
Utilisation d'un root filesystem en RAM et d'un root filesystem
du handler
monté NFS
Ecriture d'un BH et activation de celui-ci depuis un handler
d'interruption
GESTION DES MODULES
Introduction
Attente pendant un délai court et un délai long
Ecriture de Modules
Exécution de code périodique
Timestamping haute résolution pour mesure de performances
Construction des Modules
Chargement et Déchargement de Modules
DEBUG
GESTION DE LA MEMOIRE
Généralités
Allocation mémoire de l'espace noyau
printk
Gestion des E/S
/proc
Gestion du cache
gdb, remote gdb, kgdb
Gestion du DMA
Outils de traçage
PROGRAMMATION DANS L'ESPACE NOYAU
Généralités
Sujets divers
ECRITURE DE DEVICE DRIVERS
Généralités
Planification
Enregistrement d'un driver
Files d'attente
Gestion des "device nodes"
"Atomic Operations" en C
Character Drivers
Spinlocks
Structures de données et architecture générale
Sémaphores
Méthodes d'implémentation des drivers
TRAVAUX PRATIQUES
Block Drivers
Ecriture d'un module noyau
Gestion "Request queue"
Chargement manuel et chargement automatique d'un module
Ecriture d'une procédure noyau réentrante
Debug de code noyau
Gestion du cache buffer
TRAVAUX PRATIQUES
Accès à l'espace utilisateur depuis un appel noyau
GESTION DES INTERRUPTIONS ET DES EXCEPTIONS
Récupération mémoire depuis le code d'initialisation
Gestion Processeur des interruptions et des exceptions
Ecriture d'un "character driver"
Gestion des interruptions
Ecriture d'un driver "block ramdisk" et installation d'un système de
Mécanisme "Bottom-Half" : BH et Tasklet
fichiers sur celui-ci
NOTES
Les supports de cours seront fournis sur papier ou en format électronique à chaque participant pendant la formation
MVD Training - 106 avenue des guis - 31830 Plaisance du Touch - France
Tel : +33 (0) 5 62 13 52 32 - Fax : +33 (0) 5 61 06 72 60 - www.mvd-training.com
SIRET : 510 766 066 00029 - Identifiant TVA : FR 74510766066 - NAF : 8559A
Déclaration d’activité enregistrée sous le n° 73 3105366 31 auprès du Préfet de région de Midi-Pyrénées
2
Descriptif de Formation - Ref:003154A - 21/02/2017
CONTACT
Tel : 05 62 13 52 32
Fax : 05 61 06 72 60
[email protected]
MVD Training - 106 avenue des guis - 31830 Plaisance du Touch - France
Tel : +33 (0) 5 62 13 52 32 - Fax : +33 (0) 5 61 06 72 60 - www.mvd-training.com
SIRET : 510 766 066 00029 - Identifiant TVA : FR 74510766066 - NAF : 8559A
Déclaration d’activité enregistrée sous le n° 73 3105366 31 auprès du Préfet de région de Midi-Pyrénées
3

Documents pareils