Réservez les formations disponibles partout en France !

location-dot
location-dot
location-dot
À partir de
location-dot
image OF
  1. Accueil
  2. Numérique
  3. Développement et langage informatique
  4. Langage C
  5. Conception de drivers en C
Conception de drivers en C

Conception de drivers en C

Qualiopi
En centre
Non éligible CPF
Sélectionnez une session :
Mérignac :
TEAMS-CAD :

Choisissez une date pour pouvoir réserver !

Objectifs
Programme

A l'issue de cette formation, vous serez capable de :

  • Développer un driver / pilote
  • Décrire les bonnes pratiques dans le développement
  • Identifier les étapes complètes de développement
  • Utiliser les bonnes références et les bons outils
  • Sécuriser les accès et les ressources.

Jour 1

Noyau Linux et Modules

  • Introduction aux drivers
  • Environnement de développement
  • Structure d'un driver
  • Les différents types
  • Historique du noyau
  • Introduction à la gestion des entrées / sorties et appels systèmes
  • Mettre en oeuvre un Hello-World Driver 

Outils de développement

  • Organisation des sources et références
  • Gestion des outils pour le développement
  • Paramétrage et compilation du noyau
  • Programmation des modules du noyau
  • Compilation des modules indépendants
  • Messages du noyau
  • Dépendances entre modules
  • Les drivers en couche

Exemples de travaux pratiques (à titre indicatif)

  • Configuration et compilation du noyau
  • Conception d'un module de noyau

Gestion des ressources matériels et périphériques

  • Gestion de l'accès au matériel et E/S
  • Méthodes de communication
  • Gestion des modèles de périphériques
  • Développement intégrant les spécificités

Exemple de travaux pratiques (à titre indicatif)

  • Développer un driver de stockage simple

Gestion des threads et du scheduling

  • Architecture et fonctionnement du noyau
  • Les threads, le scheduler, les contextes d'exécutions
  • Drivers en mode noyau
  • Intégration des évènements
  • Multiplexage des entrées et sorties
  • Gestion des interruptions et de la concurrence
  • Synchronisation
  • Gestion de l'ordonnanceur
  • La gestion du temps

Jour 2

Allocation des ressources

  • Gestion de l'allocation mémoire
  • Gestion des mappages
  • Utilisation de la pile noyau
  • Accès à la mémoire
  • Mécanisme des pools

Les bibliothèques et frameworks

  • Vue d'ensemble des bibliothèques disponibles
  • Intégration des différentes bibliothèques dans le développement
  • Mettre en oeuvre des frameworks

Les modèles de périphériques

  • Vue d'ensemble des modèles de périphériques
  • Intégration des périphériques en mode caractère
  • Mettre en oeuvre le VFS et les accès au matériel
  • Intégration des périphériques en mode bloc et systèmes de fichier
  • Intégration des blocs avancés
  • Gestion du traitement différés
  • Intégration du DMA

Gestion des systèmes de fichiers

  • Enregistrement
  • Initialisation du super bloc
  • Intégration des appels systèmes lectures / écritures
  • Utilisation du cache
  • Communication avec le sous-système

Exemple de travaux pratiques (à titre indicatif)

  • Gestion du système de fichiers

Jour 3

Gestion du réseau

  • Introduction à la gestion réseau au sein d'un driver
  • Périphériques et dépendances des interfaces
  • Gestion et choix des protocoles réseaux
  • Création d'une interface, activation
  • Emission et réception de paquets
  • Mise en oeuvre des statistiques

Intégration des périphériques amovibles

  • Introduction aux périphériques USB
  • Contraintes et intégration
  • Organisation du sous-système
  • Communication avec les USB
  • Gestion des déconnexions
  • Gestion simultanés multi-périphériques
  • Intégrer les périphériques PnP

Fonctionnalités avancées

  • Intégrer la sécurité dans la gestion du driver
  • Gestion des appels de procédures différées
  • Intégration des routines de services d'interruption
  • Mise en oeuvre des objets de contrôleurs
  • Les différentes techniques de développements

Mise à jour et Monitoring

  • Intégration des logs et du troubleshooting
  • Mettre à jour les drivers
  • Gestion du Firmware et de l'énergie

Exemple de travaux pratiques (à titre indicatif)

  • Développer des drivers dans le cadre de cas d'usages spécifiques
Public visé

Administrateurs systèmes avec des compétences en développement, développeurs.

Prérequis

Avoir suivi les cours LUX-ADM "Linux - Administration" et LUX-ADMA "Linux - Administration avancée" ou avoir les connaissances équivalentes. Avoir des connaissances en programmation système en langage C.

Choisissez une date pour pouvoir réserver !

Autres formations disponibles :
Prochaines sessions disponibles :26 août03 mars
Qualiopi
En centre
Non éligible CPF
Prochaines sessions disponibles :02 sept.10 mars
Qualiopi
En centre
Initial
Non éligible CPF
Prochaines sessions disponibles :08 sept.13 oct.17 nov.
Qualiopi
En centre
Non éligible CPF
Prochaines sessions disponibles :08 sept.03 nov.01 déc.
Qualiopi
En centre
Non éligible CPF
Prochaines sessions disponibles :09 sept.17 mars
Qualiopi
En centre
Non éligible CPF
logo ouformer
Réalisation :Definima
Utilisation des cookies

Nous utilisons des cookies pour vous fournir l'ensemble de nos services, notamment la recherche et les alertes. En acceptant, vous consentez à notre utilisation de ces cookies.

Tout refuser
Tout accepter