Как диспетчер задач Windows 8 рассчитывает «влияние запуска» приложений
Если вы являетесь пользователем Windows 8, вы, должно быть, заметили, что в новом диспетчере задач есть вкладка «Автозагрузка» для управления приложениями, загружаемыми при запуске. В нем есть интересный столбец «Влияние запуска»:
Я хотел бы объяснить вам, что именно означают значения «воздействия на запуск» и как они рассчитываются для каждого приложения.
Рекламное объявление
Когда вы наводите указатель мыши на заголовок столбца, диспетчер задач показывает нам, что означают значения этого столбца, с помощью всплывающей подсказки:
Точные значения влияния на скорость запуска приложений определяются и классифицируются следующим образом:
- Высокий - приложение использует более 1 секунды (то есть 1000 миллисекунд) процессорного времени или более 3 МБ дискового ввода-вывода
- Середина - приложение использует от 300 до 1000 мс процессорного времени или от 300 до 3 МБ дискового ввода-вывода
- Низкий - приложение использует менее 300 миллисекунд процессорного времени и менее 300 КБ дискового ввода-вывода
- Не измеряется - означает, что приложение не запускалось при запуске. Обычно такое значение появляется для приложений, которые были удалены, но могут быть зарегистрированы для запуска при запуске. В приведенном выше примере я удалил Windows Live Messenger, когда переключился на Skype.
Как диспетчер задач получает эти значения для каждого приложения при запуске
Под капотом столбца «Влияние запуска» диспетчера задач находится WDI - Инфраструктура диагностики Windows.
При каждом запуске он отслеживает запускаемые приложения и создает файлы журнала в следующем месте:
C: \ Windows \ System32 \ wdi \ LogFiles
Чтобы получить доступ к этому расположению, вам сначала нужно открыть папку C: \ Windows \ System32 \ wdi. Проводник сообщит вам, что у вас нет доступа к папке. Нажмите «Продолжить», и он покажет вам содержимое. Затем войдите в папку «LogFiles» внутри нее и снова нажмите «Продолжить».
В BootCKCL.etl файл будет генерироваться при каждом запуске и содержит все данные, связанные с запуском приложения. Я могу открыть его с помощью "Анализатор производительности Windows"который поставляется с Visual Studio 2012. Если у вас не установлена Visual Studio 2012, вы можете установить Комплект для развертывания и оценки Windows (ADK) чтобы получить анализатор производительности Windows.
Используя анализатор производительности Windows, мы можем увидеть точные значения производительности при запуске в представлении «Подробности»:
Как показано на скриншоте выше, у Skype более 1 секунды процессорного времени, поэтому ему присвоено значение «влияние запуска» на «Высокий».
Однако диспетчер задач в Windows 8 не использует BootCKCL.etl файл напрямую. При запуске создается несколько отчетов XML на основе файла BootCKCL.etl. Они расположены в C: \ Windows \ System32 \ wdi \ LogFiles \ StartupInfo папка и названа в честь идентификатора безопасности (SID) пользователя.
Как получить SID для вашей учетной записи
Вы можете получить SID с помощью следующей команды:
wmic useraccount получить имя, sid
Вы должны открыть командную строку от имени администратора (используйте горячую клавишу Win + X), а затем введите указанную выше команду. У вас получится что-то вроде этого:
Для каждого SID есть несколько файлов. Откройте самый новый файл, просмотрев столбец «Дата изменения» и соответствующий SID. Вы увидите данные, которые диспетчер задач использует для отображения значений воздействия при запуске. Они очень похожи на данные, хранящиеся в BootCKCL.etl файл.
Теперь вы знаете, что именно означают значения столбца «Влияние при запуске», и можете использовать его для диагностики того, какое приложение вызывает медленный запуск. Сообщите нам, какие приложения в вашей системе запускаются медленнее всего (те, которые имеют "высокое" влияние).
Через Вадима Стеркина