Formations au coeur des technologies

Essayer, tester, échanger les bonnes pratiques, partager les retours d'expériences, ...
toutes nos formations sont disponibles à distance (classes virtuelles) et en centre de formation (présentiel), au choix.
Vous pouvez même changer de modalité en cours de formation, si vous avez des contraintes : par exemple, commencer en présentiel et continuer les jours suivants à distance.
Les outils pédagogiques et l'infrastructure de travaux pratiques mis à disposition sont accessibles depuis nos locaux, ou depuis votre entreprise ou votre lieu de télétravail, à volonté
N'hésitez pas à tester nos formations et nos serious games !

Formation : Programmation noyau drivers C

Durée3 jours
Code coursLC011
Inscription

Public:

Tout développeur souhaitant gérer les modules du noyau, ou en programmer de nouveaux.

Objectifs:

Comprendre le fonctionnement des modules dans le noyau, et savoir concevoir des drivers.

Connaissances préalables nécessaires:

Connaissance du système d'exploitation Linux, maîtrise de la programmation en langage C.

Déroulé pédagogique


Architecture
Durée : 8h30
Méthodes pédagogiques : alternance de théorie et de travaux pratiques
Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux
Architecture d'un système Unix. Mode user, mode kernel. Logs.
Notion de pilotes/drivers. Architecture d'un système Linux.
Notion de modules. Les distributions : desktop, embarquées (openWRT).
Gestion des modules: ajout, suppression, paramétrage.
Atelier : ajout d'un module simple sur une distribution standard.


Présentation de la busybox pour les distributions embarquées.
Compilation noyau
Durée : 8h30
Méthodes pédagogiques : alternance de théorie et de travaux pratiques
Matériels et moyens : vidéo-projecteur en présentiel, tableau partagé en classe virtuelle, infrastructure distribuée serveurs Linux
Compilation d'un noyau pur officiel. Description de la chaîne de compilation.
Options de compilations. Mise en place du nouveau noyau.
Atelier : modification d'un module pilote. Ajout au noyau précédent. Création d'un module de base.


Programmation de modules
Durée : 4h30
Méthodes pédagogiques : exposé/échanges
Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle
Principes fondamentaux : timers et alarmes, journalisation,
échanges de données kernel-mode/user-mode, interactions dynamiques avec un module,
passage de paramètres, gestion des tâches task_struct, allocation mémoire kmalloc, verrouillage du noyau en cas d'accès concurrents (lock_kernel).

Retour au descriptif
Modalités et délais d'accès
Méthodes mobilisées

Pythagore-F.D.

01 55 33 52 10
pfd@pythagore-fd.fr
Calendrier
Code cours : LC011

Contenu de la formation
Programmation noyau drivers C:

Accès à la liste des cours



Vous pouvez bien entendu composer votre programme personnel à partir de nos descriptifs de cours


Version du document : P630
Date de mise à jour du document : 2022/07/30