Как устранить неполадки, связанные с интенсивным использованием svchost.exe в Windows 7?

132960
Leonardo

У меня проблема с Windows 7 64-bit. Я думал, что это медленно и все, но потом я увидел, что загрузка процессора всегда была около 80%, и начал искать решение.

Два из них svchost.exeпотребляют около 30% каждый, а в мониторе ресурсов есть системные прерывания, которые занимают 45% все время. Я пытался закрыть приложения, но это не имеет значения.

Я попробовал некоторые другие вещи, которые я нашел в Google, например отключить обновления системы, но это не сработало.

Я не знаю, поможет ли это, но вот мои характеристики:

Core 2 Duo 4400 ATI Radeon 4850 4 GB DDR2 RAM 

РЕДАКТИРОВАТЬ

Я запустил предложенную программу и получил эту информацию; я правильно понял?

Введите описание изображения здесь


РЕДАКТИРОВАТЬ

Как вы спросили здесь, я понял это прямо сейчас? В другом TCP / IP нет ничего.

Введите описание изображения здесь

РЕДАКТИРОВАТЬ

Я запустил msconfigи забрал сервисы, которые один из svchost.exeпроцессов использовал при запуске, и теперь мой процессор составляет около 50%, но я все еще хотел бы улучшить его. Я не могу потерять столько мощности процессора только из-за Windows ...


РЕДАКТИРОВАТЬ

Да, я ничего не могу сделать здесь. Я собираюсь переустановить Windows XP в ближайшее время, это действительно странно ...

24

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

17
KdgDev

Я думаю, вы найдете Svchost Viewer полезным.

Вы можете использовать его, чтобы определить, какая программа делает больше всего, просматривая количество записанных данных и тому подобное. Это должно каким-то образом помочь определить, какой процесс делает что.

Я пытался использовать этот инструмент, но я не знаю, почему он всегда показывает, что «программа просмотра svchost не может найти ни одного запущенного сервиса». Требуется ли какая-либо конкретная конфигурация для отображения процессов хоста svc? Я не смог найти никакой документации по указанной ссылке. RBT 7 лет назад 0
14
Darren Hall

Используйте программу, такую ​​как Process Explorer, чтобы определить, кто svchost.exeпотребляет ресурсы. С svchostчего бежать services.exe? Каковы аргументы командной строки для этого конкретного svchost? Есть несколько svchostпрогонов через Windows, вам нужно будет определить, какой из них потребляет эти ресурсы. Process Explorer покажет, какие службы связаны с этим процессом, а также отобразит, какие порты TCP / IP он использует.

Нажмите на тег Process, чтобы процессы отображались в древовидном формате, чтобы подтвердить, что он запускается через services.exe.

Хотя при просмотре ваших вкладок Сервисы, они выглядят законно.

First svchost looks like `svchost.exe -k LocalServiceNoNetwork` Second svchost looks like `svchost.exe -k LocalServiceNetworkRestricted` 

Есть ли у вас что-нибудь агрессивно ударить брандмауэр Windows? Что показывают вкладки TCP / IP и Threads? На вкладке «Потоки» будет отображаться информация о процессоре для потоков внутри каждого процесса. Вы пытались перезапустить указанные службы или проверили свой журнал событий, чтобы увидеть много ошибок?

Вы выполняете какую-либо индексацию мультимедийных файлов или что-то в вашей локальной сети пытается получить доступ к этим мультимедийным файлам?

Это много вызовов EtwTraceMessageVa. Вы проверили свой журнал событий? При том, что он использует CPU, должно быть что-то в WMI, пишущем в ETW . Лучший вопрос, это началось недавно и у вас есть точка восстановления до того, как это произошло?

Предустановленный монитор ресурсов Windows также отображает имя конкретного процесса, использующего svchost. marcovtwout 9 лет назад 0
Согласно [ответу] (http://superuser.com/a/693757/101146) на повторяющийся вопрос, похоже, что если вы наведете указатель мыши на имя процесса, он скажет вам, какие службы работают под этим процессом svchost. , Jeff Bridgman 8 лет назад 0
4
Synetech

Я удивлен советом, который другие дали по этому вопросу (некоторые даже просто догадались ).

Для Леонардо и других, которые находят здесь свой путь, есть несколько теплиц, которые все остальные пропустили.

  • Да, начните с получения копии Process Explorer .

  • Да, затем посмотрите на SVCHOST.EXEзапущенные экземпляры и дважды щелкните по тому, который сильно загружен ЦП.

  • Да, посмотрите на Servicesвкладку, чтобы узнать, какие службы размещаются в этом экземпляре svchost.

Это где все остальные остановились; этого не достаточно. Теперь вам нужно по Services.mscочереди запускать и останавливать все сервисы, которые размещены в запущенном экземпляре svchost, не забывая подождать и подождать некоторое время после каждого, чтобы увидеть, падает ли загрузка процессора. Если это произойдет, то последний, кого вы остановили, был виновником.

К этому моменту вы точно знаете, какая служба загружает процессор, и можете выяснить, почему эта конкретная служба будет сосать циклы.

1
kaerast

Ряд вирусов может работать под именем svchost, поэтому лучше убедиться, что у вас есть достойный антивирус, запущенный и обновленный. Впрочем, скорее всего, это проблема Windows, не связанная с вирусами.

Svchost.exe - это общее имя хост-процесса для сервисов, которые запускаются из динамически подключаемых библиотек (DLL), и вы можете проанализировать, что именно эти процессы svchost используют, используя Svchost Process Analyzer.

1
Dominic bufton

У меня только что один из процессов svchosts, из ниоткуда, начал калечить мой 32-битный ПК с Win7 за последние 2 дня, с (двухъядерным) процессором, зависшим на 100%. Этот конкретный процесс svchost отвечал за более чем дюжину потоков процессов сетевых сервисов, каждый из которых представлял собой стандартные необходимые сетевые сервисы.

Используя комбинацию новых предупреждений администратора в EventVwr, Sys Internals Process Explorer и анализаторе svchost, я сузил его до основной причины:

Служба удаленного рабочего стола Windows Live Mesh

Отключение этого в сервисах вернуло мне около 60% моего ЦП, и этот конкретный сервис svchost затем отключился в диспетчере задач.

Это было тогда заменено другим, используя приблизительно 35 - 45%. Если щелкнуть правой кнопкой мыши в диспетчере задач и перейти к службе, единственной приписываемой службой был Защитник Windows .... (и мы все слышали об этом раньше).

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

http://www.simplehelp.net/2009/03/11/how-to-disable-windows-defender-in-windows-7/

1
CHuBBNuTT

У меня также была проблема с svchost.exe, вызывающая 100% загрузку процессора . Рассматриваемые службы, связанные с svchost, - это NLASvc, LanmanWorkstation, Dnscache и CryptSvc. Моя проблема оказалась в Firefox. В последней версии они добавили plugin-container.exe, который запускается как процесс отдельно от Firefox. Идея заключается в том, что в случае сбоя плагина это не приведет к сбою Firefox или вашего сеанса просмотра. Но это сделало серфинг в моей системе невыносимым.

Решение: отключить плагин контейнерного процесса.

  • Откройте браузер Firefox.
  • Введите about: config в адресную строку и нажмите клавишу Enter.
  • Предупреждение появится. Проигнорируйте это и нажмите кнопку «Я буду осторожен, я обещаю!».
  • В поле Фильтр введите dom.ipc. Шесть предпочтений появятся для фильтра dom.ipc.
  • Игнорировать первый и последний параметры (dom.ipc.plugins.enabled и dom.ipc.plugins.timeoutSecs). Переключите (дважды щелкните) каждое из четырех оставшихся предпочтений, чтобы изменить значение с «true» на «false».

Все готово, перезапустите Firefox и откройте диспетчер задач Windows, чтобы увидеть, что процесс контейнера подключаемых модулей отключен.

Дополнительная информация

Функция защиты от сбоев в Firefox 3.6 включена только для определенных плагинов. Четыре предпочтения, которые мы здесь изменили, определяют четыре различных подключаемых модуля. Это тестовый плагин NPAPI, Adobe Flash, Apple QuickTime (Windows) и Microsoft Silverlight (Windows). Эти плагины указаны в отдельном dom.ipc.plugins.enabledпредпочтении, по умолчанию установлено значение true. Мы можем отключить их, изменив их значение на false. И, таким образом, plugin-container.exe не будет работать. По умолчанию предпочтение dom.ipc.plugins.enabledуже установлено на «ложь». Так что не нужно его трогать. Здесь dom.ipc.plugins.timeoutSecsтакже не важно, так как другие значения ложные.

Надеюсь, это кому-нибудь поможет.

0

У меня было то же самое, убил Защитника Windows и теперь я в порядке. Удачи вам.

0
Alvin

Используйте Sysinternal's Process Explorer

Затем найдите, какая SVCHOSTслужба работает без какого-либо родителя, потому что каждый svchost.exeдолжен быть загружен services.exe. Убейте их всех, если найдете. (Вы можете определить родителя процесса, дважды щелкнув по нему >> вкладка «Изображение» >> Метка «Родитель».)

Кроме того, если вирус, который вы получили, такой же, как и у меня, вы должны сделать следующие шаги.

Проверьте, есть ли процесс с именем Watermark.exeв ..\Program Files\Microsoftпапке. Затем удалите его. (Вам также лучше ЗАБЛОКИРОВАТЬ эту папку, используя ее Securityвкладку.)

Watermark.exeвводит VBScriptsкод в каждый .htmlфайл. Затем эти зараженные .htmlфайлы внедряются в SVCHOST.EXE. Поэтому проверьте несколько .htmlфайлов из разных мест, открыв их с помощью текстового редактора. * Не беги *. Если вы найдете VBScriptкод внизу вашего файла, состояние окажется хуже, чем мы надеялись.

Так что, если это происходит тоже, лучше очистить все .htmlфайлы (или) удалить код из каждого .htmlфайла.

После очистки .htmlфайлов, для меня в этой ситуации я наверняка заменил SVCHOST.EXEустановочный компакт-диск с Windows XP, используя Recovery Consoleзагрузочный.

0
harrymc

Из ваших скриншотов кажется, что аудио-сервис задействован.

Возможно, это связано с проблемой, описанной в Win 7 с высокой загрузкой процессора на 2 сервисах (см. Последний ответ).

Попробуйте отключить встроенный звук и посмотрите, поможет ли это.

0
magicandre1981

the wevtsvc.dll is causing the high CPU usage for you.

enter image description here

This is the Windows Eventlog service. to see in detail what is does, you have to use xperf to capture CPU sampling data and analyze it with WPA.exe.