Guide de conception de l’architecture du pilote Kernel-Mode
Notes
Pour plus d’informations sur les interfaces de programmation que votre pilote peut implémenter ou appeler, consultez la référence du pilote en mode noyau.
Cette section comprend des concepts généraux pour vous aider à comprendre la programmation en mode noyau et décrit des techniques spécifiques de programmation par noyau. Pour obtenir une vue d’ensemble des pilotes Windows, consultez Prise en main avec les pilotes Windows, qui fournit une vue d’ensemble générale des composants Windows, répertorie les types de pilotes de périphérique utilisés dans Windows, décrit les objectifs des pilotes de périphérique Windows et traite des exemples de pilotes de périphérique génériques inclus dans le kit.
Cette section contient des informations conceptuelles qui décrivent et vous aident à créer des pilotes en mode noyau.
Vue d’ensemble contenant :
- Vue d’ensemble des composants Windows
- Objectifs de conception pour les pilotes Kernel-Mode
- Un catalogue d’exemples de pilotes Kernel-Mode
- Meilleures pratiques de développement du pilote du noyau, telles que compilées par l’équipe Microsoft Surface
Les composants en mode noyau décrivent les principaux gestionnaires et composants en mode noyau du système d’exploitation Windows.
Composant Description Gestionnaires Gestionnaire d’objets Windows Kernel-Mode Gère les objets : fichiers, appareils, mécanismes de synchronisation, clés de Registre, etc. Gestionnaire de mémoire Windows Kernel-Mode Gère la mémoire physique du système d’exploitation. Processus Kernel-Mode Windows et Gestionnaire de threads Gère l’exécution de tous les threads dans un processus. Gestionnaire d’E/S Windows Kernel-Mode Gère la communication entre les applications et les interfaces fournies par les pilotes de périphérique. Gestionnaire de Kernel-Mode Plug-and-Play Windows Sous-système du gestionnaire d’E/S, le gestionnaire Plug-and-Play (PnP) permet à un PC de reconnaître quand un appareil est ajouté au système. Windows Kernel-Mode Power Manager Gère le changement ordonné de status d’alimentation pour tous les appareils qui prennent en charge les changements d’état d’alimentation. Windows Kernel-Mode Configuration Manager Gère le registre, comme la surveillance des modifications dans le registre ou l’inscription de rappels sur des données de registre spécifiques. Gestionnaire de transactions du noyau Windows Kernel-Mode Implémente le traitement des transactions en mode noyau. Moniteur de référence de sécurité Windows Kernel-Mode Fournit des routines pour que votre pilote fonctionne avec le contrôle d’accès. Bibliothèques Bibliothèque de noyaux Windows Kernel-Mode Implémente les fonctionnalités de base dont dépend tout le reste du système d’exploitation. Le noyau Microsoft Windows fournit des opérations de bas niveau de base, telles que la planification de threads ou le routage d’interruptions matérielles. Bibliothèque de support Windows Kernel-Mode Executive Fait référence aux composants en mode noyau qui fournissent une variété de services aux pilotes de périphérique, notamment la gestion des objets, la gestion de la mémoire, la gestion des processus et des threads, la gestion des entrées/sorties et la gestion de la configuration. Bibliothèque Windows Kernel-Mode Run-Time Ensemble de routines utilitaires courantes nécessaires à différents composants en mode noyau. Bibliothèque de chaînes sécurisées Windows Kernel-Mode Bibliothèque de chaînes sécurisées pour fournir une plus grande sécurité dans le développement en mode noyau. Bibliothèque DMA Windows Kernel-Mode Bibliothèque d’accès direct à la mémoire (DMA) pour les développeurs de pilotes de périphérique. Bibliothèque HAL Windows Kernel-Mode Couche d’abstraction matérielle (HAL) pour le développement de pilotes en mode noyau. Bibliothèque CLFS Windows Kernel-Mode Un système de journalisation transactionnel, le Common Log File System (CLFS). Bibliothèque WMI Windows Kernel-Mode Mécanisme général de gestion des composants, appelé WMI (Windows Management Instrumentation). L’écriture de pilotes WDM et présentation de WDM fournissent les informations nécessaires pour écrire des pilotes à l’aide du modèle de pilote Windows (WDM).
Les objets d’appareil et les autres rubriques de Device Objects and Device Stacks décrivent comment le système d’exploitation représente les appareils par objets d’appareil.
La gestion de la mémoire pour les pilotes Windows illustre comment les pilotes en mode noyau allouent de la mémoire à des fins telles que le stockage des données internes, la mise en mémoire tampon des données pendant les opérations d’E/S et le partage de mémoire avec d’autres composants en mode noyau et en mode utilisateur.
Sécurité Du contrôle de l’accès et desprivilèges des appareils à SDDL pour les objets Device, assurez-vous que vos pilotes sont aussi sécurisés que possible.
La gestion des irps décrit comment les pilotes en mode noyau gèrent les paquets de demandes d’E/S (IRP).
DMA L’accès direct à la mémoire (DMA) est un aspect essentiel du développement de pilotes, et les rubriques de ce nœud couvrent DMA de A à Z.
Les objets contrôleur représentent un contrôleur d’appareil physique avec des appareils attachés.
Les routines de service d’interruption (ISR) gèrent les interruptions pour les pilotes d’un appareil physique qui reçoit des interruptions.
Les interruptions signalées par message déclenchent une interruption en écrivant une valeur dans une adresse mémoire particulière.
Les appels de procédure différée (objets DPC) peuvent être mis en file d’attente à partir d’ISR et sont exécutés ultérieurement et à un IRQL inférieur à l’ISR.
Plug-and-Play (PnP) se concentre sur la prise en charge des logiciels système pour PnP et sur la façon dont les pilotes utilisent cette prise en charge pour implémenter PnP.
La gestion de l’alimentation décrit l’architecture qui fournit une approche complète de la gestion de l’alimentation du système et des appareils.
Windows Management Instrumentation (WMI) sont des extensions de votre pilote en mode noyau, qui permettent à votre pilote de devenir un fournisseur WMI. Un fournisseur WMI met les données de mesure et d’instrumentation à la disposition des consommateurs WMI, comme les applications en mode utilisateur.
Techniques de programmation des pilotes Les pilotes de programmation en mode noyau de Windows nécessitent des techniques qui diffèrent parfois considérablement de celles de la programmation en mode utilisateur ordinaire.
Windows driver documentation
Commentaires
Envoyer et afficher des commentaires pour