O que é o svchost e por que várias instâncias dele estão sendo executadas?

27

Há seis instâncias em execução na minha área de trabalho e, provavelmente, dez em um servidor que eu gerencio. O que é isso e é vital para a função do sistema?

    
por jldugger 22.05.2009 / 18:54

5 respostas

16

svchost, hospeda serviços no Windows Consulte KB . Se você usar o Process Explorer , poderá ver quais serviços estão sendo executados dentro de um processo específico. p>     

por 22.05.2009 / 18:58
20

Muitos componentes de execução do Windows são implementados como serviços (veja todos os serviços na sua máquina que abrem Control Panel > Administrative Tools > Services ). Estes são programas especializados em execução em segundo plano. Eles não são iniciados pelo usuário logado, mas meu é o próprio sistema operacional.

A maioria dos serviços não são executáveis independentes (arquivos EXE), mas são implementados em bibliotecas (DLLs), que podem ser usadas executando processos. Como o nome sugere, Svchost ou "Service Host" é o executável padrão do Windows para executar essas DLLs. Você pode encontrar o arquivo svchost.exe no diretório %systemroot%\system32 .

Se você quiser saber qual instância do svchost está executando qual serviço, digite

 tasklist /svc /fi "IMAGENAME eq svchost.exe"

em um console de linha de comando (cmd).

Na máquina, onde fiz a captura de tela, uma das instâncias do svchost está executando 21 serviços diferentes, por exemplo. Esse agrupamento de serviços permite melhor controle e depuração mais fácil, de acordo com a documentação da Microsoft .

OsgruposSvchost.exesãoidentificadosnaseguintechavedoRegistro:

HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost

Umadica(sevocêexecutaroWindowsVista,Windows7ouWindowsServer2008):vocêpodeabriroGerenciadordeTarefaseclicarcomobotãodireitoemumprocessosvchost.exeespecíficoe,emseguida,escolheraopção"Ir para Serviço". Isso mostrará a guia Services , onde todos os serviços em execução no processo svchost.exe selecionado serão marcados.

Há um documento muito interessante no Centro de Download da Microsoft:

Referência dos Serviços de Sistema do Microsoft Windows Server 2003

This document contains summaries all of the services available for the Windows Server 2003 family of operating systems. The services are listed in alphabetical order by display name. Following a description of each service, a table lists key information about the service.

Todos os serviços do Windows são listados com todos os detalhes. Você aprende, por exemplo, que o nome do arquivo executável do serviço de serviços de terminal é

 svchost.exe -k termsvcs 
    
por 23.05.2009 / 15:16
7

Svchost é a abreviação de "Service Host". Ele mantém a maioria dos serviços em sua máquina em execução. Haverá alguns Serviços que se hospedam em seu próprio arquivo .exe, mas a maioria dos Serviços do Windows precisa ser hospedada dentro de um processo svchost.exe. Os Serviços da sua máquina lidam com coisas importantes como rede, servidor RpC, áudio, log de eventos, etc.

Digite "services.msc" em Iniciar- > Executar para visualizar os Serviços que você está executando em sua máquina. Se você julgar que alguém é desnecessário, você pode parar o serviço.

Digite "tasklist / SVC" para ver quais serviços são hospedados pelos diferentes arquivos svchost.exe.

    
por 22.05.2009 / 19:38
1

Aqui está um one-liner do PowerShell que gera todos os serviços hospedados em processos svchost.exe:

PS>get-process svchost | % {get-wmiobject win32_service -filter "processid=$($_.id)"} | format-table processid,name,displayname,state,status -auto

processid name          displayname                               state   status
--------- ----          -----------                               -----   ------
      316 HTTPFilter    HTTP SSL                                  Running OK
     1328 DcomLaunch    DCOM Server Process Launcher              Running OK
     1328 TermService   Terminal Services                         Running OK
     1392 RpcSs         Remote Procedure Call (RPC)               Running OK
     1528 AudioSrv      Windows Audio                             Running OK
     1528 BITS          Background Intelligent Transfer Service   Running OK
     1528 Browser       Computer Browser                          Running OK

A versão mais curta de um one-liner é assim:

gps svchost | % {gwmi win32_service -f "processid=$($_.id)"} | ft proc*,name,disp*,stat* -auto
    
por 04.06.2009 / 09:34
0

Este artigo pode ajudar: link

    
por 10.07.2009 / 13:24