IOCTL_USB_START_TRACKING_FOR_TIME_SYNC IOCTL (usbioctl.h)
Diese Anforderung registriert den Aufrufer beim USB-Treiberstapel für Zeitsynchronisierungsdienste.
Hauptcode
Eingabe-/Ausgabepuffer
Ein Zeiger auf eine USB_START_TRACKING_FOR_TIME_SYNC_INFORMATION-Struktur . Bei der Eingabe muss der Aufrufer das TimeTrackingHandle-Element auf NULL festlegen. Bei der Ausgabe legt der USB-Treiberstapel das TimeTrackingHandle-Element auf ein Handle fest, das den Vorgang der Synchronisierungsdienste nachverfolgt.
Länge des Eingabe-/Ausgabepuffers
Die Größe der USB_START_TRACKING_FOR_TIME_SYNC_INFORMATION-Struktur .
Statusblock
Irp->IoStatus.Status wird auf STATUS_SUCCESS festgelegt, wenn die Anforderung erfolgreich ist. Andernfalls gibt Status eine geeignete Fehlerbedingung als NTSTATUS-Code an.
Hinweise
Wenn diese IOCTL-Anforderung abgeschlossen ist, ermöglicht der USB-Treiberstapel bestimmten Interrupts vom Hostcontroller, die nächste Frame-/Mikroframegrenze nachzuverfolgen, um den QPC-Wert des Systems mit Genauigkeit vorherzusagen. Das Aktivieren der Hardwareunterbrechungen erhöht den Mehraufwand für den Stromverbrauch, da die CPU alle 2,048 Sekunden aktiviert wird, wenn sie im Energiezustand D0 arbeitet. Daher wird empfohlen, dass sich der Aufrufer nur bei Bedarf für Zeitsynchronisierungsdienste registrieren sollte.
Der Treiberstapel deaktiviert diese Interrupts, wenn er die IOCTL_USB_STOP_TRACKING_FOR_TIME_SYNC-Anforderung empfängt und abschließt.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10, Version 1709 |
Unterstützte Mindestversion (Server) | Windows Server 2016 |
Kopfzeile | usbioctl.h |
IRQL | <= DISPATCH_LEVEL |
Weitere Informationen
Erstellen von IOCTL-Anforderungen in Treibern
WdfIoTargetSendInternalIoctlOthersSynchronly