Что именно из процесса System грузит процессор?

Тема в разделе "WASM.BEGINNERS", создана пользователем nimdamsk, 9 ноя 2007.

  1. nimdamsk

    nimdamsk New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2006
    Сообщения:
    4
    Заранее извиняюсь за возможно глупые вопросы.

    Вчера, работая за ноутбуком, заметил, что загрузка процессора - около 100%. В Windows Task Manager увидел что систему грузит процесс System. Как я понимаю к этому процессу относятся все низкоуровневые подсистемы ОС, в т.ч. работа с аппаратными средствами, менеджер памяти, обрабтчик аппаратных прерываний и, в том числе, драйвера режима ядра. Быстрый поиск в сети не помог найти информацию о том, как определить какой именно драйвер (грешу именно на кривой драйвер, т.к. после перезагрузки ОС стала работать нормально) загружает процессор. Поговорил с местным системщиком. По его словам, если производитель драйвера не встроит в него определение загрузки процессора и памяти, эти данные не получится узнать. То есть сама ОС этого узнать не может из-за наслоения драйверов. Хотелось узнать так ли это, и как этот вопрос решается в других ОС.
    Попутно возник вопрос - что есть такое "загрузка процессора" по "мнению" Windows Task Manager вообще? То есть хочется услышать определение понятия, т.к. сам я до этого не "дошёл". Что это - загрузка определённых компонентов процессора, или относительная ресурсоёмость процессов по сравнению с его максимальной производительностью (что есть тоже весьма расплывчатое понятие). В принципе, думаю можно какую-то информацию об этом почерпнуть из исходных текстов ядра Linux, но там их сотни мегабайт и я просто не знаю где и что конкретно смотреть.

    Спасибо.
     
  2. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    ProcessExplorer умеет отображать потоки. Советую им воспользоватся.
     
  3. infern0

    infern0 New Member

    Публикаций:
    0
    Регистрация:
    7 окт 2003
    Сообщения:
    811
    Адрес:
    Russia
    nimdamsk
    в таск менеджере можно включить отображение загрузки в режиме ядра (будет красным рисовать). По крайней мере можно будет определить загрузку создает код ядра или пользовательский.
     
  4. FlatL1ne

    FlatL1ne FlatL1ne

    Публикаций:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    34
    Адрес:
    Underground
    RKU тебе в помощь!!!
    Главное окно программы содержит шесть вкладок:

    Детектирование и снятие перехватов SSDT
    Детектор скрытых процессов
    Детектор скрытых драйверов
    Детектор скрытых файлов
    Детектор перехватов кода
    Отчет

    http://rootkits.ru/app/ShowApp.aspx?id_a=1
     
  5. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    и как он поможет понять какой драйвер грузит проц?
     
  6. nimdamsk

    nimdamsk New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2006
    Сообщения:
    4
    Я тут навёл справки... В общем понятно что есть "загрузка процессора" и как она считается. Менеджер процессов просто-напросто считает какое количество квантов времени от, к примеру, секунды, кушает тот или иной процесс, а остальное - уже понятно. Ясное дело, сюда не входят ресурсы на обслуживание этих самых квантов времени, т.к. сами себя они считать не в состоянии. Вопрос же с драйвером остаётся открытым.
     
  7. nimdamsk

    nimdamsk New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2006
    Сообщения:
    4
    Да, и ещё один вопрос - как получается, что у System Idle Process может быть значение 99%? Ведь если диспетчер потоков пытается выделить время этим потокам, а им не надо, они находятся в ожидании - тогда получается что диспетчер потоков будет всё время бегать по потокам предлагая им ресурсы. А для постоянного опроса нужно время процессора. Как это можно связать с почти полностью свободным процессорным временем?
     
  8. 10110111

    10110111 New Member

    Публикаций:
    0
    Регистрация:
    13 июл 2006
    Сообщения:
    319
    Адрес:
    Санкт-Петербург
    Их ожидание может прекратиться почти всегда не раньше первого прерывания, соответственно нет нужды предлагать процессорное время.
     
  9. _BC_

    _BC_ БЦ

    Публикаций:
    0
    Регистрация:
    20 янв 2005
    Сообщения:
    759
    afair можно также глянуть прогой microsoft kernrate viewer
     
  10. Mi256

    Mi256 New Member

    Публикаций:
    0
    Регистрация:
    24 сен 2007
    Сообщения:
    116
    nimdamsk для начала System Idle теоретически может быть и 100% так как ето не процес, а просто вреся простоя системы по сравнению с временем работы всёх процесов. Но вот напр. диспетчер задач, сам потребляет минимум 1%, лишь для считывания данных о системе и их отображения, и ещо сама система потребляет минимум около 0.3% чтобы упорядочить списки закрывать ненужные хендлы, подгружать страницы и т.д.
    Да и по сути воможно вычыслить что за драйвер или служба подвисает систему, даже если их работает куча. Но для етого надо сидеть и разбиратся что там виснет. Ето может быть даже исключение с установленным обработчиком, который не может толком его обработать (у меня такое было). Словом, разбиратся надо...
     
  11. k3internal

    k3internal New Member

    Публикаций:
    0
    Регистрация:
    11 янв 2007
    Сообщения:
    607
    или руткит....