笛子培训班:任务管理器中的进程。。。。

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/27 20:32:13
svchost.exe 在network service和system 中都有,这是什么应用程序呢?

进程文件:Svchost or Svchost.exe
进程名:Microsoft Service Host Process
描述: www.w3sky.com摘自microsoft
Svchost.exe - 您无法从任务管理器中结束此进程。
这是一个通用进程,它充当从 DLL 运行的其他进程的宿主;因此,该进程会对应有多个项目,这是很正常的。要查看哪些进程正在使用 Svchost.exe,请使用 Windows 2000 安装光盘中的 Tlist.exe;语法是在命令提示符处键入 tlist -s。

有关更多信息,请参阅下面的文章:
250320 (http://support.microsoft.com/kb/250320/EN-US/) Windows 2000 中的 Svchost.exe 说明
作者:Microsoft 属于windows操作系统。

系统进程:是
后台进程:是
使用网络情况:是
硬件关联情况:否
是否病毒:否

关于此进程的疑问:www.w3sky.com
1,Svchost.exe是什么?
www.w3sky.com的回答:我们先看看微软是怎样描述Svchost.exe的。在微软知识库314056中对Svchost.exe有如下描述:Svchost.exe 是从动态链接库 (DLL) 中运行的服务的通用主机进程名称。

其实Svchost.exe是Windows XP系统的一个核心进程。Svchost.exe不单单只出现在Windows XP中,在使用NT内核的Windows系统中都会有Svchost.exe的存在。一般在Windows 2000中Svchost.exe进程的数目为2个,而在Windows XP中Svchost.exe进程的数目就上升到了4个及4个以上。所以看到系统的进程列表中有几个Svchost.exe不用那么担心。
这些svchost进程提供很多系统服务,如:rpcss服务(remote procedure call)、dmserver服务(logical disk manager)、dhcp服务(dhcp client)等等。

我们要了解一点那就是Windows系统的中的进程分为:独立进程和共享进程这两种。由于Windows系统中的服务越来越多,为了节约有限的系统资源微软把很多的系统服务做成了共享模式。那Svchost.exe在这中间是担任怎样一个角色呢?

Svchost.exe的工作就是作为这些服务的宿主,即由Svchost.exe来启动这些服务。Svchost.exe只是负责为这些服务提供启动的条件,其自身并不能实现任何服务的功能,也不能为用户提供任何服务。Svchost.exe通过为这些系统服务调用动态链接库(DLL)的方式来启动系统服务。

2,如何才能辨别哪些是正常的Svchost.exe进程,而哪些是病毒进程呢?
www.w3sky.com的回答:Svchost.exe的键值是在“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Svchost”,此键中每个键值表示一个独立的Svchost.exe组。

微软还为我们提供了一种察看系统正在运行在Svchost.exe列表中的服务的方法。以Windows XP为例:在“运行”中输入:cmd,然后在命令行模式中输入:tasklist /svc。系统列出如图2所示的服务列表。列表中有Svchost.exe启动的服务。如果使用的是Windows 2000系统则把前面的“tasklist /svc”命令替换为:“tlist -s”即可。

如果你怀疑计算机有可能被病毒感染,Svchost.exe的服务出现异常的话通过搜索Svchost.exe文件就可以发现异常情况。一般只会找到一个在:“C:\Windows\System32”目录下的Svchost.exe程序。如果你在其他目录下发现Svchost.exe程序的话,那很可能就是中毒了。

还有一种确认Svchost.exe是否中毒的方法是在任务管理器中察看进程的执行路径。但是由于在Windows系统自带的任务管理器不能察看进程路径,所以要使用第三方的进程察看工具。

上面简单的介绍了Svchost.exe进程的相关情况。总而言之,Svchost.exe是一个系统的核心进程,并不是病毒进程。但由于Svchost.exe进程的特殊性,所以病毒也会千方百计的入侵Svchost.exe。通过察看Svchost.exe进程的执行路径可以确认是否中毒。

3,svchost又怎么知道某个系统服务该调用哪个动态链接库呢?这是通过系统服务在注册表中设置的参数来实现的?
www.w3sky.com的回答:下面以Remote Registry服务为例,来看看svchost进程是如何调用DLL文件的。在WinXP中,点击“开始→运行”,输入“services.msc”命令,会弹出服务对话框,然后打开“Remote Registry”属性对话框,可以看到Remote Registry服务的可执行文件的路径为“C:\Windows\System32\svchost -k LocalService”,这说明Remote Registry服务是依靠svchost调用“LocalService”参数来实现的,而参数的内容则是存放在系统注册表中的。

在运行对话框中输入“regedit.exe”后回车,打开注册表编辑器,找到“HKEY_LOCAL_MACHINE\System\currentcontrolset\services\Remote Registry”项,再找到类型为“reg_expand_sz”的“Imagepath”项,其键值为“%systemroot%\system32\svchost -k LocalService”(这就是在服务窗口中看到的服务启动命令),另外在“parameters”子项中有个名为“ServiceDll”的键,其值为“% systemroot%\system32\regsvc.dll”,其中“regsvc.dll”就是Remote Registry服务要使用的动态链接库文件。这样svchost进程通过读取“Remote Registry”服务注册表信息,就能启动该服务了。

也正是因为svchost的重要性,所以病毒、木马也想尽办法来利用它,企图利用它的特性来迷惑用户,达到感染、入侵、破坏的目的。那么应该如何判断到底哪个是病毒进程呢?正常的svchost.exe文件应该存在于“C:\Windows\system32”目录下,如果发现该文件出现在其他目录下就要小心了。

提示:svchost.exe文件的调用路径可以通过“系统信息→软件环境→正在运行任务”来查看.

请参考这篇文章:http://www.w3sky.com/55.html

是系统程序。