Fonction VideoPortSynchronizeExecution (video.h)
La fonction VideoPortSynchronizeExecution synchronise l’exécution d’une fonction HwVidSynchronizeCallback fournie par un pilote miniport avec la fonction HwVidInterrupt du pilote miniport, le cas échéant. Sinon, il exécute HwVidSynchronizeExecutionCallback à une priorité élevée.
VIDEOPORT_DEPRECATED BOOLEAN VIDEOPORT_API VideoPortSynchronizeExecution(
PVOID HwDeviceExtension,
VIDEO_SYNCHRONIZE_PRIORITY Priority,
PMINIPORT_SYNCHRONIZE_ROUTINE SynchronizeRoutine,
PVOID Context
);
HwDeviceExtension
Pointeur vers l’extension de périphérique du pilote miniport.
Priority
Spécifie le type de priorité auquel l’objet SynchronizeRoutine donné doit être exécuté, comme suit :
- Si La priorité est définie sur VpLowPriority, le thread actuel est élevé à la priorité de masquage sans interruption la plus élevée. Par conséquent, le thread actuel peut être préempté uniquement par un ISR si un appareil s’interrompt.
- Si Priority est défini sur VpMediumPriority et que le pilote miniport a un ISR associé à sa carte vidéo, l’appel à l’objet SynchronizeRoutine donné est synchronisé avec la fonction HwVidInterrupt du pilote miniport. Sinon, la synchronisation est effectuée au niveau VpLowPriority .
- VpHighPriority a le même effet que VpMediumPriority.
SynchronizeRoutine
Pointeur vers la fonction HwVidSynchronizeExecutionCallback du pilote miniport.
Context
Pointeur vers un contexte fourni par l’appelant à passer à la fonction HwVidSynchronizeExecutionCallback du pilote miniport. Ce pointeur peut avoir la valeur NULL.
Si l’opération réussit, VideoPortSynchronizeExecution retourne TRUE.
Les pilotes miniports appellent rarement cette routine, sauf si l’une des conditions suivantes est remplie :
- La fonction HwVidInterrupt du pilote miniport partage la mémoire avec d’autres fonctions du pilote miniport. Pour accéder à la mémoire partagée de manière sécurisée pour plusieurs processeurs, ces fonctions de pilote miniport doivent appeler VideoPortSynchronizeExecution avec HwVidSynchronizeExecutionCallback. Cette fonction de pilote miniport peut accéder en toute sécurité à la mémoire partagée, car le pilote de port vidéo empêche la fonction HwVidInterrupt d’accéder simultanément à la même mémoire.
- L’adaptateur doit être programmé avec une séquence de commandes sans être soumis à un commutateur de contexte. Par exemple, la fonction SvgaHwIoPortXxx d’un pilote miniport qui a mis en mémoire tampon une séquence d’instructions d’E/S et validé la séquence peut appeler VideoPortSynchronizeExecution avec HwVidSynchronizeExecutionCallback. Cette fonction de pilote miniport peut transférer très rapidement le flux d’E/S mis en mémoire tampon et validé vers l’adaptateur.
Les appelants de VideoPortSynchronizeExecution doivent être en cours d’exécution à l’IRQL
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows 2000 et versions ultérieures des systèmes d’exploitation Windows. |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | video.h (inclure Video.h) |
Bibliothèque | Videoprt.lib |
DLL | Videoprt.sys |
IRQL | <= DIRQL |