Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le rappel DRIVER_PROXY_ENDPOINT_FUNCTION définit la signature de fonction pour une fonction de point de terminaison permutable à chaud dans le système DriverProxy. Il s’agit d’un type de pointeur de fonction générique qui représente n’importe quelle fonction de pilote pouvant être permutable à chaud via l’infrastructure driver Hot-Swap.
Syntaxe
DRIVER_PROXY_ENDPOINT_FUNCTION DriverProxyEndpointFunction;
VOID DriverProxyEndpointFunction()
{...}
Valeur retournée
Aucun
Remarques
Les fonctions de point de terminaison sont des fonctions implémentées par le pilote qui peuvent être remplacées au moment de l’exécution sans décharger le pilote. Le système DriverProxy crée des fonctions wrapper qui redirigent les appels vers l’implémentation actuelle de chaque fonction de point de terminaison, ce qui active la fonctionnalité d’échange à chaud.
Ce type de rappel sert de pointeur de fonction générique pour le système DriverProxy. Dans la pratique, les fonctions de point de terminaison ont des signatures différentes en fonction de leur objectif spécifique, mais elles sont toutes traitées comme des pointeurs DRIVER_PROXY_ENDPOINT_FUNCTION au sein de l’infrastructure DriverProxy.
Dans Driver Hot-Swap V2, les fonctions de point de terminaison sont automatiquement découvertes pendant le processus de génération via l’analyse du compilateur et de l’éditeur de liens. Le compilateur identifie les fonctions qui doivent être permutables à chaud et place des informations sur celles-ci dans la .shsept section du fichier binaire.
Principales caractéristiques des fonctions de point de terminaison :
- Ils peuvent être remplacés au moment de l’exécution via le système DriverProxy
- Ils sont accessibles via des fonctions wrapper retournées par IoGetDriverProxyWrapperFromEndpoint
- Ils doivent être associés à une extension DriverProxy créée par IoCreateDriverProxyExtension
- Leur remplacement est coordonné via l’infrastructure DriverProxy pour garantir la sécurité des threads
Les exigences IRQL réelles pour les fonctions de point de terminaison dépendent de la fonction spécifique implémentée. Les pilotes doivent concevoir leurs fonctions de point de terminaison en fonction des contraintes IRQL de leur utilisation prévue.
Spécifications
| Requirement | Valeur |
|---|---|
| plateforme cible | Universal |
| Header | wdm.h |
| IRQL | Variable |
Voir aussi
IoGetDriverProxyWrapperFromEndpoint