IOCTL_USB_START_TRACKING_FOR_TIME_SYNC IOCTL (usbioctl.h)
此请求将调用方注册到用于时间同步服务的 USB 驱动程序堆栈。
主要代码
输入/输出缓冲区
指向 USB_START_TRACKING_FOR_TIME_SYNC_INFORMATION 结构的指针。 输入时,调用方必须将 TimeTrackingHandle 成员设置为 NULL。 在输出时,USB 驱动程序堆栈将 TimeTrackingHandle 成员设置为跟踪同步服务操作的句柄。
输入/输出缓冲区长度
USB_START_TRACKING_FOR_TIME_SYNC_INFORMATION结构的大小。
状态块
Irp->如果请求成功,IoStatus.Status 设置为 STATUS_SUCCESS。 否则, Status 指示作为 NTSTATUS 代码的适当错误条件。
注解
当此 IOCTL 请求完成时,USB 驱动程序堆栈允许来自主机控制器的某些中断来跟踪最近的帧/微帧边界,以便准确预测系统 QPC 值。 启用硬件中断会增加功耗开销,因为 CPU 在 D0 电源状态下工作时每 2.048 秒就会唤醒一次。 因此,建议调用方仅在需要时注册时间同步服务。
驱动程序堆栈在收到并完成 IOCTL_USB_STOP_TRACKING_FOR_TIME_SYNC 请求时禁用这些中断。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 版本 1709 |
最低受支持的服务器 | Windows Server 2016 |
标头 | usbioctl.h |
IRQL | <= DISPATCH_LEVEL |
另请参阅
WdfIoTargetSendInternalIoctlOthersSynchronously