svchost是什么
Svchost.exe是从动态链接库 (DLL) 中运行的服务的通用主机进程名称。这个程序对系统的正常运行是非常重要,而且是不能被结束的。svchost.exe在windows进程中占据很大一部分的资源,svchost.exe非常容易被病毒所利用。svchost.exe病毒利用之后,系统常会弹出svchost.exe错误,当然 svchost.exe病毒也有专杀工具。
我们知道 Windows 和 Windows 的应用软件都 要使用大量的 DLL(Dynamic Link Libraries,动态链接库)文件,这些 DLL文 件一般都要向Windows申请各种各样的Service(服务),而Svchost. exe 就是其中一些服务的通用管理进程名(Generic Host Process Name),简单的说,Svchost.exe是这些服务的总称。每一个Svchost. exe 进程以一个 Group(组)的方式分组管理各种服务,每一个 Svchost.exe服务。
Windows XP 中可以有多个 Svchost.exe 进程同时运行,之 所以这样设计是为了更为方便地分类控制和调试各个进程和服务。 Svchost.exe在Windows XP的系统目录\Windows\System32\ 下,在启动的时候,Svchost.exe根据注册表中的相关信息建立一个 服务列表并根据这个列表加载相关的服务。一般来说,Svchost.exe 总是根据 HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost下面的键值分组管理DLL 申请的服务,这里的每一键值对应一个独立的Svchost.exe进程,也 就是说这里的键值就是在任务管理器中我们看到的Svchost.exe进程。
当然,由于这里的键值并不是一次性全部加载,而是根据需要才加 载,因此这里的键值数要多于在任务管理器中看到的Svchost.exe进程数,而每个Svchost.exe进程所包含的服务名、参数值和DLL则来 自 HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Services\ Service这个键值。
在任务管理器中只能看到Svchost.exe进程而看不到该进程所包含的服务,要想了解每个 Svchost.exe 进程下到底有什么服务就需要使用别的方法。选择 Windows XP任务栏上的“开始 / 运行”,输入“CMD ”并回车,打开 Windows XP 的命令行窗口,输入“Tasklist / SVC”并回车就可以看到每个 Svchost.exe进程及 其所包含的各种服务,其中 Image Name (映像名)是进程的名称,PID(Process ID)是进程标识,以数字形式表示,Services(服务)就是 进程所包含的各种服务。
可惜的是Tasklist只显示 各种服务的缩写而不是全称,对于这些缩写一般只 有对Windows系统内核十分了解的程序员才能明 白其真正意义,它们主要是指网络、域名缓存、远 程控制和应用程序接口等服务,当然普通的电脑用 户也没必要去过多的了解这些十分专业的名称。如果用户还想进一步了解每个进程调用的DLL文件, 可以使用“Tasklist /M”这个命令
使用Tasklist 还可查看指定进程的情况,例如想要查看 PID 为728 的进程的情况,可以使用命令“Tasklist /FI "PID eq 728"”。Tasklist还有许多命令参数,对它感兴趣的用户可以使用Tasklist /?得到详细的帮助信息。
另外补充一点,其实 Svchost.exe 早在Windows 2000 就已存在,只是作用没有在 Windows XP中这么明显,所以在Windows 2000 时代很少有人注意它的存在。在Windows 2000中 查看各个进程及服务的命令为“tlist -s”,查看指 定进程及服务的命令是“tlist PID”。
怎样清除svchost.exe病毒
步骤1、用unlocker删除类似于C:\SysDayN6这样的文件夹:例如C:\Syswm1i、C:\SysAd5D等等,这些文件夹有个共同特点,就是名称为 Sys*** (***是三到五位的随机字母),这样的文件夹有几个就删几个。
步骤2、开始——运行——输入“regedit”——打开注册表,展开注册表到以下位置:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
删除右边所有用纯数字为名的键,如
<66>
<333>
<50>
<4>
步骤3、重新启动计算机,病毒清除完毕。