Чтобы посмотреть, сколько времени ваша система работает в режиме ядра по сравнению с работой в пользовательском режиме, можно воспользоваться Системным монитором (Performance Monitor).
Выполните следующие действия:
- Запустите Системный монитор (Performance Monitor), открыв меню Пуск (Start) и выбрав пункты Панель управления - Администрирование -Системный монитор (AllPrograms - AdministrativeTools– Performance Monitor). На расположенном слева древовидном раскрывающемся списке инструментов Производительность (Performance) выберите пункты Средства наблюдения (Monitoring Tools) - Системный монитор (Performance Monitor).
- Щелкните на кнопке добавления (+), которая находится на панели инструментов.
- Раскройте раздел счетчиков Процессор (Processor), щелкните на пункте % работы в привилегированном режиме (% Privileged Time counter) и, удерживая в нажатом состоянии клавишу Ctrl, щелкните на пункте % работы в пользовательском режиме (% User Time).
- Щелкните на кнопке "Добавить (Add)", а затем на кнопке OK.
- Откройте окно командной строки и проведите непосредственное сканирование своего диска C по сети, набрав команду dir\\%computername%\c$/s.
6. По окончании работы закройте окно инструментального средства. Такую же картину можно быстро просмотреть с помощью Диспетчера задач (Task Manager). Щелкните на вкладке Производительность (Performance), а затем выберите в меню Вид (View) пункт Вывод времени ядра (Show Kernel Times). На графике загруженности центрального процессора зеленым цветом будет показана его общая загруженность, а красным — загруженность в режиме ядра.
Чтобы увидеть, сколько времени в режиме ядра и в пользовательском режиме использует сам Системный монитор (Performance Monitor), запустите его еще раз, но при этом добавьте отдельные счетчики процесса % работы в пользовательском режиме (% User Time) и % работы в привилегированном режиме (% Privileged Time) для каждого процесса в системе:
- Если Системный монитор (Performance Monitor) не запущен, запустите его снова. (Если он уже запущен, начните работу с пустого отображения, щелкнув в области графиков правой кнопкой мыши и выбрав пункт "Удалить все счетчики" (Remove All Counters.)
- Щелкните на кнопке добавления (+), которая находится на панели инструментов.
- В доступной области счетчиков раскройте раздел Процесс (Process).
- Выберите счетчики % работы в пользовательском режиме (% User Time) и % работы в привилегированном режиме (% Privileged Time).
- Выберите несколько процессов в области Экземпляры выбранного объекта (Instance) (например, mmc, csrss и Idle).
- Щелкните на кнопке "Добавить" (Add), а затем на кнопке OK.
- Интенсивно подвигайте мышью в разные стороны.
- Выберите на панели инструментов пункт "Выделить" (Highlight) или нажмите сочетание клавиш Ctrl+H, чтобы включить режим выделения. Текущий выбранный счетчик будет выделен черным цветом.
- Прокрутите список счетчиков вниз для определения процессов, чьи потоки были запущены при перемещении указателя мыши, и обратите внимание на то, в каком режиме они были запущены, в пользовательском или в режиме ядра.
Вы должны увидеть (найдя в столбце Экземпляр (Instance) процесс mmc), что график времени выполнения процесса, принадлежащего Системному монитору, в режиме ядра и в пользовательском режиме при перемещении мыши пошел вверх, поскольку в нем выполняется прикладной код в пользовательском режиме, и вызываются Windows-функции, запускаемые в режиме ядра. Обратите также внимание на активность потока, принадлежащего процессу csrss и выполняемого в режиме ядра при перемещении мыши.
Эта активность возникает благодаря тому, что этому процессу принадлежит исходный поток ввода той подсистемы Windows, выполняемой в режиме ядра, которая обрабатывает ввод с клавиатуры и с мыши. И наконец, процесс Idle, который, как можно заметить, тратит почти 100 % своего времени на работу в режиме ядра, на самом деле процессом не является, это ложный процесс, используемый для подсчета холостых циклов центрального процессора.
Судя по режиму, в котором запускаются потоки процесса Idle, когда Windows нечего делать, процесс ожидания происходит в режиме ядра.