Назад | Перейти на главную страницу

Ограничить количество служб, размещаемых одним файлом svchost.exe под Windows XP?

Есть ли параметр реестра или что-то еще, чтобы ограничить количество отдельных служб, запускаемых в одном svchost.exe обработать?

Я знаю о WIN32_SHARE_PROCESS флаг и sc способность приложения запускать отдельные службы в их собственном процессе, но мне не нужны накладные расходы на процесс для каждый из десятков сервисов. В идеале хотелось бы увидеть 30 услуг от Автоматические обновления через рабочую станцию, которая в настоящее время обслуживается одним процессом, может использоваться от трех до пяти процессов.

Вы можете контролировать, какие службы объединяются в один процесс svchost, изменяя записи реестра на HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/SvcHost. Вы будете изменять значения, каждое из которых содержит список запущенных в нем служб (например, netsvcs).

Об этом есть немного больше информации, большая часть которой связана с червем Conficker и очисткой после него. Это основано на исследованиях, связанных с ситуация, когда мне приходилось вручную удалять следы некоторых вредоносных сервисов.

Обновление с дополнительными ресурсами / информацией: информации не так много, и я еще не экспериментировал с этим, но самая полезная информация, которую я нашел ранее во время исследования, была:

Вы не заметите улучшения производительности, сделав это ...

Если вы хотите запускать некоторые службы по запросу, установите для них «Ручной запуск», и Windows запустит службу при попытке доступа.

Если вы хотите видеть, какая служба вызывает проблемы с производительностью, попробуйте запустить командную строку и использовать эту команду: C:\>tasklist /svc /FI "IMAGENAME eq svchost.exe"

Это покажет вам все экземпляры svchost.exe, какие службы работают в каждом процессе, и PID (идентификатор процесса).

Как только вы узнаете PID, вы можете запустить диспетчер задач (Ctrl+Alt+Del) и в Processes вкладка перейти к View > Select Columns... и решил показать PID.

Тогда вы узнаете, какой svchost.exe вызывает проблемы с производительностью, и сможете связать PID со списком служб, запущенных в этом экземпляре svchost.exe.

Надеюсь, это поможет устранить основную причину вашего вопроса.