Сегодня мы поговорим про Svchost.exe, что это за процесс и почему он может грузить систему.
Как зайти во вкладку процессы
Пока компьютер работает нормально, обычного пользователя мало интересует, какие процессы запущены в системе и для чего они нужны вообще.
А вот нестандартное поведение ОС Windows XP/Vista/7 – торможение, зависание, частые перезагрузки, заставляет нас искать причины.
С чего же начать поиск? Давайте попробуем запустить «Диспетчер задач».
Варианты запуска.
- Нажимаем комбинацию клавиш «Ctrl»+ «Alt»+ «Del».
- Нажимаем кнопку «Пуск», выбираем команду «Выполнить», вводим taskmgr.exe и нажимаем кнопку «Ok».
Теперь переходим на вкладку «Процессы» и изучаем список.
Большое количество процессов svchost.exe сразу настораживает. Ну что ж, самое время разобраться с возможностями этого приложения.
Первое знакомство с svchost.exe
В последнее время для компоновки служб Windows вместо привычных исполняемых файлов с расширением .exe все чаще применяются динамически подключаемые библиотеки с расширением .dll.
Этот способ считается более эффективным. Однако, библиотечный файл, в отличие от исполняемого, сам стартовать не может.
Запустить службу (сервис) из dll-файла «помогает» приложение svchost.exe.
Вот, например, как запускается служба DNS-клиента:
C:\WINDOWS\system32\svchost.exe -k NetworkService.
Несколько слов о процессах svchost.exe
Каждый экземпляр процесса svhost.exe инициируется родителем — системным процессом services.exe.
Один процесс svshost.exe может запускать одну службу или группу, состоящую из нескольких логически связанных служб Windows.
Вариант запуска «один процесс svchost -> несколько служб Windows» позволяет экономить ресурсы оперативной памяти и процессора.
Для просмотра svchost-групп и их состава переходим в реестр Windows:
- нажимаем кнопку «Пуск» и находим команду «Выполнить»;
- в командной строке вводим regedit.exe и нажимаем кнопку «Ok».
- в реестре переходим к ветке HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost;
- находим параметры REG_MULTI_SZ со списками служб каждой группы.
Например, в состав группы DcomLaunch входят следующие сервисы:
- Power – служба, которая управляет конфигурацией питания и отправкой уведомлений об установленных конфигурациях питания;
- PlugPlay – служба, благодаря которой компьютер автоматически распознает подключенные к нему устройства и настраивает их на работу без участия пользователя или минимизирует это участие.
- DcomLaunch – служба запуска серверов COM и DCOM для устойчивой работы программ использующие данные сервера.
Ни одну из выше указанных служб отключать не рекомендуется.
При просмотре данных процесса svchost обязательно обратите внимание на колонку «Имя пользователя».
В ней может находиться только одно из следующих значений: «Local Service», «System», «Network Service».
Где живет файл.
В операционных системах Windows XP/Vista/7 местоположение файла svchost.exe – стандартное:
- 32-битные ОС – C:\Windows\System32\;
- 64-битные ОС – C:\Windows\SysWOW64\.
Запомним точный адрес файла. Это нам пригодится в дальнейшем.
Процесс svchost.exe и его связи
Диспетчер задач выдает нам целый список запущенных процессов svchost.exe, но этой информации явно недостаточно.
Естественно, нас интересует, какие именно сервисы запускает конкретный экземпляр этого процесса.
Итак, несколько способов узнать о связях svchost’а.
Команды tasklist и sc.
Применение команд tasklist и sc возможно в любой версии Windows. Поэтому, этот способ можно считать универсальным.
Прежде всего, запускаем cmd – интерпретатор командной строки Windows:
- нажимаем кнопку «Пуск»;
- выбираем команду «Выполнить»;
- вводим cmd и нажимаем кнопку «Ok».
Для получения списка служб на экране интерпретатора запускаем команду tasklist с ключом svc и нажимаем клавишу «Enter»:
- tasklist /svc «Enter».
Для сохранения результатов запроса в текстовый файл svc.txt, находящийся на диске C: в папке temp, делаем перенаправление вывода команды tasklist:
- tasklist /svc > C:\temp\svc.txt «Enter»
Заметим, что файл будет сохранен в dos-кодировке.
Фрагмент листинга tasklist.exe.
Имя образа PID Службы:
+++
- svchost.exe 1216 DcomLaunch
- svchost.exe 1300 RpcSs
- svchost.exe 1384 WudfSvc
- svchost.exe 1528 Dnscache
- svchost.exe 1584 LmHosts, SSDPSRV
+++
Колонки таблицы:
- «Имя образа» – имя исполняемого файла;
- «PID» – идентификатор процесса;
- «Службы» – список сервисов.
Чтобы получить информацию о конкретном сервисе, задаем его краткое название в качестве параметра команды управления сервисами sc.
Пример получения сведений о службе TermService.
– sc qc TermService «Enter».
Два способа перехода к списку сервисов.
- Нажимаем кнопку «Пуск», находим команду «Выполнить», в командной строке вводим services.msc и нажимаем кнопку «Ok».
- Нажимаем кнопку «Пуск», затем выбираем Настройка ->Панель управления -> Администрирование -> Службы.
Диспетчер задач Windows Vista/7.
Получаем список сервисов, связанных с процессом svchost с помощью диспетчера задач Windows Vista/7:
- устанавливаем курсор на название процесса;
- вызываем контекстное меню нажатием правой кнопки мыши и выбираем опцию «Перейти к службам»;
- получаем список, в котором подсветкой выделены связанные с нашим процессом сервисы.
В операционной системе Windows XP опция «Перейти к службам», к сожалению, отсутствует. Этот вариант нельзя считать универсальным.
Утилита Process Explorer.
Эта программа не входит в дистрибутивы Windows, но доступна к скачиванию с сайта Microsoft либо со страницы загрузки Process Explorer.
Процесс запуска очень простой и не требующий инсталляции:
- скачиваем zip-архив;
- разархивируем в папку на диске;
- запускаем файл procexp.exe.
Утилита выдает детальную информацию о процессах, запущенных в системе: pid, загрузку cpu, краткое описание, сведения о производителе и т.д.
При наведении мыши на название одного из экземпляров svchost’а мы получили следующую информацию:
- Command Line – строка запуска сервиса или группы сервисов через svchost;
- Path – путь к файлу svchost.exe;
- Services – список сервисов.
Контекстное меню, вызываемое нажатием правой кнопки мыши, предоставляет большие возможности по управлению процессом и службами, которые он запускает.
Утилита AnVir Task Manager.
Программа AnVir Task Manager не только обеспечивает управление запущенными процессами, сервисами, драйверами и автозагрузкой, но и выполняет функции антивируса.
Порядок запуска такой же, как и у Process Explorer’а:
- скачиваем бесплатную версию AnVir Task Manager в формате zip-архива;
- разархивируем в папку на диске;
- запускаем файл AnVir.exe.
Для переключения языка при первом запуске программы пользуемся главным меню:
«View->Language->Russian».
Выбираем вкладку «Процессы» для получения подробной информации о наших svchost’ах.
В строке процесса мы видим сведения о производителе, путь к исполняемому файлу, процент загрузки ЦП и т.д.
Но самые интересные данные представлены в колонке «Автозагрузка». Здесь вы найдете список запускаемых svchost’ом сервисов.
Дважды щелкаем левой кнопкой мыши по названию процесса и получаем более детальную информацию о нем (окно с вкладками в нижней части экрана).
Система тормозит что делать
Какие симптомы указывают на виновность svchost и как устранить проблемы. Давайте разберемся.
Система может тормозить по разным причинам. Но если в диспетчере задач вы обнаружите процесс svchost.exe c высоким процентом загрузки центрального процессора (иногда даже около 100%) – вполне вероятно, что причина именно в нем.
Многие пользователи считают, что в этом случае svchost обязательно является вирусом. Но это не так. Процесс может грузить систему и по другим причинам.
Давайте рассмотрим, как решить проблему с svchost’ом в обоих случаях.
Svchost – вирус или нет?
Многие трояны и другие компьютерные вирусы маскируются под известные системные приложения Windows. Svchost – не исключение.
По данным лаборатории Касперского svchost’ом «прикидываются» вирусы Trojan-Clicker.Win32.Delf.cn, Virus.Win32.Hidrag.d, Net-Worm.Win32.Welchia.a, а также известный большинству пользователей вирус Kido.
Итак, начинаем проверять наш процесс.
В первую очередь обратите внимание на расположение файла svchost.exe. Если оно отличается от стандартного – файл смело можно удалять.
Проверьте имя пользователя, запустившего процесс. Список допустимых имен приведен в разделе «Несколько слов о процессах svchost.exe».
Внимательно перечитайте имя процесса. Вирусописатели часто используют похожие имена: svhost, svchosts и т.д.
Приложение никогда не может запускаться через раздел «Run» реестра Windows.
Поэтому обязательно нужно проверить его наличие в автозагрузке:
- нажимаем кнопку «Пуск», выбираем команду «Выполнить», вводим msconfig и нажимаем кнопку «Ok»;
- переходим на вкладку «Автозагрузка»;
- если файл svchost.exe найден — отключаем запуск.
Для удаления подозрительного процесса в диспетчере задач вызываем контекстное меню нажатием правой кнопки мыши и выбираем команду «Завершить дерево процессов».
После выполнения всех описанных действий необходимо обязательно запустить антивирусную программу и пролечить компьютер.
Svchost не является вирусом, но грузит систему
Если вы убедились, что svchost – реальный системный процесс, давайте разберемся со службами, которые он запускает.
Порядок действий следующий – по очереди останавливаем службы, связанные с процессом, и смотрим, что получится.
Мы уже рассказывали о том, как перейти к списку сервисов в разделе «Процесс svchost.exe и его связи». Теперь разберемся, как их останавливать.
Отключение сервиса в стандартной программе «Службы» ОС Windows:
- устанавливаем курсор на имя службы и двойным щелчком левой кнопки мыши открываем окно службы;
- переходим на вкладку «Общие», нажимаем кнопку «Стоп», затем – «Ok».
Отключение сервиса в программе Process Explorer:
- устанавливаем курсор на нужный процесс svchost.exe, вызываем контекстное меню нажатием правой кнопки мыши и выбираем опцию «Properties»;
- в открывшемся окне переходим на вкладку «Services»;
- выбираем нужную службу в списке и нажимаем кнопку «Stop».
Отключение сервиса в программе AnVir Task Manager:
- устанавливаем курсор на нужный процесс svchost.exe, вызываем контекстное меню нажатием правой кнопки мыши и выбираем «Перейти->Перейти к сервису»;
- выбираем нужный сервис в списке, вызываем контекстное меню нажатием правой кнопки мыши и выбираем опцию «Стоп».
Отключение сервиса с помощью команды sc:
- нажимаем кнопку «Пуск»;
- выбираем команду «Выполнить»;
- вводим cmd и нажимаем кнопку «Ok»;
- в окне интерпретатора вводим команду: sc stop «имя службы» «Enter».
Если остановленная вами служба не является причиной загрузки процессора, ее следует запустить и повторить те же действия со следующей службой.
Перезапуск сервисов:
- программа «Службы» — кнопка «Пуск»;
- программа Process Explorer – кнопка «Restart»;
- программа AnVir Task Manager – кнопка «Пуск»;
- команда sc — sc start «имя службы» «Enter».
Отметим, что остановка службы действует только до перезагрузки Windows. Поэтому, если вы нашли «виновницу», которая грузит систему, нужно отключить ее запуск в программе «Службы»:
- нажимаем кнопку «Пуск», выбираем меню «Настройка ->Панель управления -> Администрирование -> Службы»;
- устанавливаем курсор на имя сервиса и двойным щелчком левой кнопки мыши открываем его окно;
- переходим на вкладку «Общие»;
- находим параметр «Тип запуска», устанавливаем значение «Отключено» и нажимаем кнопку «Ok».
Перед отключением службы вы должны четко представлять, какие функции она выполняет и не приведет ли ее отключение к нарушению работы системы.
Заметим, что при установке Windows включается стандартный набор служб. Некоторые из них могут быть совершенно не нужны вам для работы, и только потреблять ресурсы компьютера.
Поэтому желательно разобраться в назначении каждой из них и отключить лишние службы.
Четыре возможных причины большой загрузки процессора
Если список служб, запускаемых svchost’ом, достаточно велик – поиск «виновника» превращается в довольно утомительное занятие.
Несколько полезных советов, на что следует обратить внимание в первую очередь.
- Служба автоматического обновления может работать некорректно для Windows XP. Причина – ошибки в реализации механизма проверки обновлений. Поскольку количество «заплаток» достаточно велико, компьютер способен искать их не один день и зависать при этом.
- Работа «Проводника Windows», связанного с нашим процессом, напрямую зависит от Internet Explorer. Поэтому устаревшая версия IE – одна из вероятных причин торможения. Решение проблемы – установка новой версии Internet Explorer’а (можно воспользоваться службой автоматического обновления Windows).
- «Кривые» драйверы, запускаемые svchost’ом из динамических библиотек, также одна из вероятных причин неприятностей. Испытывая трудности в поиске драйверов, пользователи иногда устанавливают найденный в Сети софт от неизвестных производителей. Чаще всего проблемы возникают с драйверами звуковых плат и видеокарт. Проблемные драйверы следует удалить и заменить стабильными версиями.
- Программа «Защитник Windows» из стандартного дистрибутива Windows 7/Vista предназначенная для защиты ПК от вредоносных программ не может работать в связке с антивирусными программами. Но, к сожалению, не каждый антивирусник может деактивировать «Защитника» (пример — Eset Nod). Для решения вопроса заходим в «Панель управления» через кнопку «Пуск», находим «Защитника» и выключаем флажок «Запускать проверку в состоянии простоя».
Надеемся, что материалы нашей статья помогут вам разобраться в проблемных ситуациях с процессом svchost.exe. Удачи.
Спасибо помогла выявить проблему Утилита Process Explorer отключил обновление и бездействие системы стало 95%.
У меня 64 битная система,но сам этот файла хранится в C:\Windows\System32\ И что делать ?