Отслеживание дискового ввода-вывода приложением в Windows?

25

Существует ли утилита для Windows, которая работает аналогично iotop для Linux? Я ищу простой инструмент, который может сказать мне, какие приложения пишут на диск и сколько они на самом деле пишут.

Pridkett
источник
Какую версию Windows вы используете?
Сим
Это старый ноутбук под управлением XP.
Придкетт

Ответы:

28

Вкладка «Диск» в Resource Monitor в Windows 7 / Vista идеально подходит для этого. Однако, если вы не используете Windows 7, взгляните на Process Explorer и добавьте соответствующие счетчики столбцов ввода / вывода.

Сим
источник
1
Проблема с этим решением состоит в том, что, если одна или несколько служб поглощают время, вы не сможете сузить, поскольку в диспетчере задач все процессы службы отображаются как svchost.
Шандор
Это не очень полезно, потому что просто говорит, что «System» или «svchost» перегружают диск
эндолит
9

В комплект системных утилит Windows Sysinternals входит утилита Process Monitor, которая может отслеживать активность операций ввода-вывода в файловой системе, реестре или сети. Кроме того, есть также утилита Disk Monitor, которая контролирует дисковый ввод-вывод по типу запроса, секторам, продолжительности и т. Д.

tech_dude
источник
2

Process Explorer делает это. Я посмотрел на другие ответы, и они не делают этого:

Столбцы обозревателя процессов

Следуйте инструкциям на этом сайте :

  1. Посетите веб-сайт Microsoft Sysinternals и загрузите Process Explorer.
  2. После того, как вы запустили Process Explorer, щелкните элемент View menu и затем выберите Columns.
  3. Нажмите на вкладку Process I / O и проверьте:

    Читает

    Читать байты

    Записывает

    Написать байтов

  4. Хит ОК.

  5. Теперь вы увидите новые столбцы, перечисленные для каждого процесса. Чтобы определить, какой процесс убивает ваш жесткий диск, просто найдите процесс с наибольшим количеством операций чтения или байтов.

Это покажет вам, для каждого процесса , что обращается к диску и сколько.

Locane
источник
1

Монитор процессов от sysinternals - отличный инструмент, но монитор ввода-вывода не показывает ввод-вывод, который попадает на диск - он показывает полный останов IO - даже если это бьет по памяти.

К вашему сведению, вы также можете использовать PERFMON, чтобы показать точно то же самое, если вы используете «процесс», а затем данные операций ввода-вывода в секунду.

Питер
источник