Rundll32.exe занимает много процессора, тогда активна заставка

5263
Petr Abdulin

Я использую Windows 8 Pro x64. Я заметил, что Rundll32.exeпроцесс занимает много процессорного времени (25%, что составляет 100% загрузки одного ядра), тогда я не использую компьютер, особенно тогда, когда активен sceensaver. И этот процесс немедленно завершается, затем заставка исчезает (затем я перемещаю мышь или нажимаю клавишу на клавиатуре).

Я нашел это, потому что я использую специальную программу мониторинга процессов, которая также позволяет мне собирать информацию о процессе (это последняя информация, доступная из уже остановленного процесса):

Path = C:\WINDOWS\system32\rundll32.exe User Name = NT AUTHORITY \ SYSTEM PID/Parent PID = 4576 / 800 Started by = C:\WINDOWS\system32\services.exe Virtual KB Curr = 149 872 Peak = 299 416 Working Set KB Curr = 54 732 Peak = 54 732 Page File KB Curr = 46 720 Peak = 46 720 System Pool KB Paged = 208 Nonpaged = 22 Private KB = 46 720 Handles Count = 385 Faults Count = 293 958 Windows = 0 Reads = 4 255 Read KB = 56 263 Writes = 1 Write KB = 0 Other IOs = 677 511 Other KB = 8 614 

Из этой информации очевидно, что процесс занимает много операций чтения и никаких записей. Также он запускается диспетчером управления службами. Я никогда не замечал такого поведения в своей Windows 7 до обновления, и мне было интересно, не является ли это какой-то ошибкой, которая вызывает или какой-то законной задачей сканирования системы?

Я использую Blank screenзаставку, которая не использует процессор. Я на самом деле проверил, что scrnsave.scrтакже завершается, но не потребляет процессор. Процессор потребляется именно тем, Rundll32.exeчто, очевидно, так или иначе связано с событиями DOWN заставки.

Также я заметил, что он запускается не совсем тогда, когда запускается ssaver, но через некоторое время после него (или, возможно, у него есть какой-то другой интервал времени бездействия, прежде чем он запускается), но останавливается всегда, тогда ssaver останавливается. И как я обнаружил, что это фактически заканчивается через некоторое время, я оцениваю последнюю встречу как около 2 минут работы (но я не уверен, всегда ли это занимает столько времени).

И (как я обнаружил только сейчас) кажется, что он не запускается снова после завершения своей работы. Похоже, что на самом деле какая-то законная система просто работает, тогда система бездействует. Это имеет смысл, поскольку требует много ресурсов ЦП, поэтому он не будет тормозить какой-либо пользовательский процесс (примерно так же, как ngen.exeработает).

1

3 ответа на вопрос

3
magicandre1981

Установите Windows Performance Toolkit, запустите командную строку с правами администратора и выполните эту команду и сверните окно:

xperf -on latency -stackwalk profile -buffersize 1024 -MaxFile 256 -FileMode Circular && timeout -1 && xperf -d HighCPUUsage.etl 

После того, как вы воспроизвели проблему, вернитесь в CMD и нажмите любую кнопку, которую хотите остановить, чтобы остановить ведение журнала. Теперь заархивируйте HighCPUUsage.etlкак 7z и загрузите его.

Спасибо за совет, но проблема вроде бы решена (вроде). Смотри мой ответ. Petr Abdulin 11 лет назад 0
1
higuita

Вероятно, что rundll32.exe загружает заставку.

большинство экранных заставок бесполезны, они симпатичны, но просто сжигают процессор, графический процессор, и вы выигрываете больше, просто приостанавливая, а затем выключая экран. Вы можете поставить заставку, но только на одну минуту, прежде чем приостановить экран. После приостановки экранная заставка не должна работать (я не знаю, действительно ли Windows 8 выключала экранную заставку при приостановке экрана, протестируйте ее)

Это, вероятно, не тот случай, я обновил вопрос. Однако, если есть ошибка в `Rundll32.exe`, которая заставляет его съесть процессор после запуска ssaver, это может иметь место, но это не объясняет, почему он постоянно читает диск (или делает это?). Petr Abdulin 11 лет назад 0
Если через некоторое время после запуска экранной заставки, то это то, что Windows 8 делает в фоновом режиме ... такие вещи, как: оптимизация файлов, индексирование документов, резервное копирование / восстановление системы и т. Д. Используйте проводник процессов sysinternals, чтобы увидеть, что такое rundll32 точно работает, при необходимости, проверьте вкладку строк и выберите «из памяти», чтобы увидеть, какие ссылки он имеет в процессе higuita 11 лет назад 0
0
Petr Abdulin

I'n not completely sure, but as far as I could dig into this, it's was somehow related to Dr.Web antivirus software background rountines (maybe some sort of database update, or internal checks). However I can't be 100% sure.

Since it doesn't seem to be any time of malfunction, I don't want to spend more time on research.

Update: I've notices same behaviour on my Windows 7 HB x64 based notebook, which have also same Dr.Web antivirus installed, so this seems to be it, -- some sort of Dr. Web background rooutines.