Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом разделе содержатся сведения о том, как просмотреть временную шкалу событий, захваченных в журнале USB ETW.
Xperf предоставляет набор событий ядра для анализа проблем с производительностью. Он записывает эти события и представляет их в графиках.
Если вы знакомы с событиями XPerf и USB ETW, вы можете создать журнал USB ETW и журнал проблемы Xperf, объединить два файла журнала и проанализировать их вместе. Совместное использование Xperf и Netmon позволяет просматривать системные события (Xperf) и USB-события (Netmon) для заданного сценария.
Запустите две трассировки параллельно, выполнив следующие команды из командной строки с повышенными привилегиями:
Xperf –on Diag
Logman start Usbtrace -p Microsoft-Windows-USB-USBPORT -o usbtrace.etl -ets -nb 128 640 -bs 128
Logman update Usbtrace -p Microsoft-Windows-USB-USBHUB –ets
Выполните действия для сценария проблемы, а затем остановите трассировки, выполнив следующие команды из командной строки с повышенными привилегиями:
Logman stop Usbtrace -ets
Xperf –stop
Объедините два файла журнала трассировки в один файл с помощью следующей команды (привилегии не требуются):
Xperf –merge usbtrace.etl C:\kernel.etl merged.etl
В этом примере создается объединенный файл с именем merged.etl. Этот файл можно открыть с помощью анализатора производительности Xperf или с помощью Netmon. Чтобы открыть файл в Xperf, выполните следующую команду:
Xperf merged.etl
Xperf отображает специализированные графы для широкого спектра событий ядра, как показано на этом изображении. Дополнительные сведения о параметрах записи Xperf и графическом интерфейсе Xperf см. в Справочнике Xperf Command-Line и Анализаторе производительности Windows (WPA).
Чтобы открыть объединенный журнал трассировки в Netmon, запустите Netmon, нажмите кнопку "Файл -> Открыть -> Записать", а затем выберите файл. Xperf и Netmon могут одновременно открывать объединенный файл. Вы можете переключаться между графическим интерфейсом Xperf и Netmon, чтобы проанализировать то, что происходит в системе и в стеке USB в течение определенного периода времени. В дополнение к системным событиям можно просмотреть USB-события в Xperf, но usb-события могут быть проще читать в Netmon.
По умолчанию Netmon отображает все события в объединенном файле трассировки. Чтобы отобразить только события USB, примените фильтр, например следующий:
ProtocolName == "USBHub_MicrosoftWindowsUSBUSBHUB" OR ProtocolName == "USBPort_MicrosoftWindowsUSBUSBPORT"
Этот текст фильтра можно ввести в области отображения фильтра Netmon. Дополнительные сведения об использовании фильтров в Netmon см. в разделе "Фильтры USB Netmon" в этом примере: устранение неполадок неизвестного USB-устройства с помощью ETW и Netmon.
Чтобы проанализировать синхронизацию USB-событий, можно изучить разницу во времени между отображаемыми событиями в Netmon.
Просмотр разницы времени отображаемых событий
В области "Сводка кадров" щелкните правой кнопкой мыши заголовок столбца и выберите "Выбрать столбцы".
В списке "Отключенные столбцы" выберите "Время дельта", нажмите "Добавить" и затем "ОК".
Напишите фильтр, отображающий только события, время которого вы хотите просмотреть. Например, чтобы просмотреть задержки между непересекающимися крупнообъемными передачами и завершением событий, добавьте следующий фильтр:
Description == "USBPort_MicrosoftWindowsUSBUSBPORT:Dispatch URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER" OR Description == "USBPort_MicrosoftWindowsUSBUSBPORT:Complete URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER" OR Description == "USBPort_MicrosoftWindowsUSBUSBPORT:Complete URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER with Data"
- Идентификаторы событий (описания) можно выбрать из событий, которые отображаются в трассировке.
- Чтобы использовать идентификатор события в фильтре, щелкните правой кнопкой мыши описание события в области "Сводка кадров " и выберите "Добавить описание в фильтр отображения".