Commençons par comprendre ce que sont les pilotes de périphérique ?
Fondamentalement, les pilotes de périphériques sont de minuscules programmes qui autorisent les systèmes d’exploitation à lire des segments de périphériques matériels connectés à votre ordinateur. Il existe de nombreux types de pilotes de périphériques pour le matériel informatique.
Cependant, il existe des pilotes de périphérique indispensables pour tous les ordinateurs.
Mais d’abord, comment fonctionnent les pilotes de périphériques ?
En termes simples, les pilotes de périphérique fonctionnent comme des traducteurs entre un programme et un périphérique que vous souhaitez utiliser. Le logiciel et le matériel sont tous deux conçus par des sociétés différentes. Pour qu’ils parlent d’autres langues, ils auront besoin d’un traducteur pour communiquer lorsqu’ils travailleront ensemble. Bref, le pilote de périphérique fonctionne comme un traducteur entre eux !
En d’autres termes, le pilote de périphérique peut fournir des informations à un pilote pour expliquer ce qu’il veut qu’un élément matériel fasse, des informations que le pilote de périphérique comprend et peut ensuite remplir avec le matériel. Fondamentalement, les pilotes de périphérique font partie intégrante de Développement BSP!
Pour ton information: Qu’est-ce que le BSP ?
UN pack d’assistance au conseil d’administration est un code important pour tout périphérique matériel informatique, qui fera fonctionner ce périphérique avec le système d’exploitation ! Le développement BSP est nécessaire pour exécuter le processeur cible intégré.
Les principaux objectifs du pilote de périphérique sont mentionnés ci-dessous :
- Gérer et contrôler un appareil connecté à un ordinateur.
- Fournir une interface entre le système d’exploitation et l’appareil.
- Pour indiquer au système d’exploitation comment s’articuler avec le composant matériel.
- Il traduit les requêtes entre l’appareil et l’ordinateur.
Les pilotes de périphériques ont différents modes ainsi que des types. Voyons ses manières et ses types plus loin dans cet article.
Modes de pilotes de périphériques
Un processeur dans n’importe quel ordinateur a deux modes différents. Le processeur continue de basculer entre deux modes en fonction du type de code exécuté sur le processeur. Toutes les applications peuvent s’exécuter en mode utilisateur et les composants du système d’exploitation du noyau s’exécutent en mode noyau. Alors que de nombreux pilotes s’exécutent en mode noyau, et certains s’exécutent en mode utilisateur.
Découvrons les différences entre les pilotes de périphérique en mode noyau et en mode utilisateur.
1. Pilote de périphérique en mode noyau
Tout code qui s’exécute en mode noyau véhicule un seul espace d’adressage virtuel. Un pilote en mode noyau n’est pas séparé des autres pilotes et du système d’exploitation lui-même. Si un pilote en mode noyau écrit accidentellement sur la mauvaise adresse virtuelle, les données appartenant au système d’exploitation ou à un autre pilote pourraient être compromises.
Si un pilote en mode noyau plante, tout le système d’exploitation plantera ! Où si le mode utilisateur plante, cela n’affecte pas l’ensemble du système d’exploitation !
Des exemples de périphériques en mode noyau incluent la gestion de la mémoire, la planification du processeur, la gestion des fichiers, etc.
2. Pilote de périphérique en mode utilisateur
Lorsque vous lancez une application en mode utilisateur, Windows forme un processus pour l’application. Le processus fournit à l’application un espace d’adressage virtuel privé et une table de descripteurs privés. Étant donné que l’espace d’adressage virtuel d’une application est subjectif, une application ne peut pas modifier les données appartenant à une autre application. Chaque application s’exécute séparément, et si une application tombe en panne, le plantage sera limité à cette seule application uniquement. Les autres applications et le système d’exploitation ne seront pas affectés par l’impact.
En plus d’être privé, l’espace d’adressage virtuel d’une application en mode utilisateur est limité. Un processeur s’exécutant en mode utilisateur ne peut pas accéder aux adresses virtuelles validées dans le système d’exploitation. La définition de l’espace d’adressage virtuel d’une application en mode utilisateur empêche l’application de modifier et éventuellement d’endommager les données système fonctionnelles cruciales.
La lecture de fichiers PDF, PowerPoint, l’application Word et la navigation sur Internet sont quelques-uns des exemples d’applications en mode utilisateur.
Types de pilotes de périphériques
Savez-vous qu’il existe plusieurs types de pilotes de périphériques et que chacun a un type d’entrée et de sortie différent ?
Comprenons-les en détail ci-dessous.
1. Bloquer les pilotes
Les périphériques qui prennent en charge un système de fichiers sont connus sous le nom de Block Devices. Les pilotes composés pour ces périphériques sont appelés pilotes de périphérique bloc.
Les pilotes de bloc incluent :
- Section pilote chargeable par périphérique
- Section de configuration de l’appareil
- Section d’accès aux appareils
2. Pilotes de périphériques de caractères
Les pilotes de périphérique de bloc gèrent les périphériques avec des fichiers de support de stockage physiquement adressables, tels que des disques. Le reste de tous les appareils sont considérés comme des appareils de caractères.
De plus, il y a 2 types de pilotes de périphériques de caractères :
- Pilotes de périphériques de caractères standard
- Pilotes de périphérique STREAM
Les pilotes de personnage incluent des tâches telles que :
- Allocation de structures d’état par instance
- Enregistrement des interruptions de périphérique
- Cartographier les registres de l’appareil
- Initialisation des variables de mutex et de condition
- Création de composants gérables en puissance
- Création de nœuds mineurs
3. Pilotes virtuels
Au fur et à mesure de la virtualisation matérielle, les ingénieurs ont créé des pilotes de périphériques virtuels qui sont des composants de pilotes de périphériques facilitant la communication directe entre un périphérique matériel virtuel et une application. De plus, les pilotes de périphériques virtuels aident à gérer le flux de données pour autoriser plusieurs applications à accéder au même matériel sans conflit.
Lorsqu’il y a une interruption (signal négatif provenant d’un périphérique matériel), le pilote de périphérique virtuel configure l’étape d’instruction suivante en fonction de l’état des paramètres du périphérique matériel.
Conclusion
Au début de la programmation, les pilotes de périphériques étaient souvent écrits en langage assembleur, un langage de bas niveau qui peut accéder instantanément et directement aux instructions matérielles et CPU.
Aujourd’hui, la plupart des programmeurs qui écrivent des pilotes de périphériques travaillent dans le langage de programmation C ou C++ car il offre un excellent accès aux instructions de bas niveau et aux programmes et structures de données plus complexes. Tester que les pilotes de périphériques doivent intégrer la sécurité ainsi que les problèmes opérationnels.
Étant donné que ces logiciels s’exécutent à des niveaux de privilèges élevés, ils peuvent entraîner une compromission du système ou des vulnérabilités du côté de la sécurité, une défaillance pure et simple (plantage ou blocage) et des problèmes de performances du côté opérationnel.
Bien qu’il existe de nombreuses entreprises proposant le développement de BSP, assurez-vous de choisir la bonne qui possède une vaste expérience dans ce domaine. Je vous recommande d’aller avec si notre puisqu’il est bien connu pour ses services de développement BSP et d’ingénierie de produits. Ils ont une équipe expérimentée et fiable d’ingénieurs en matériel.
Soutenez notre effort ❤️
Si vous avez apprécié cet article, pensez à laisser un pourboire pour nous aider à continuer à publier du contenu de qualité.






















