百度空间 | 百度首页 
 
查看文章
 
进程
2009-10-22 13:41

什么是进程

为了保证系统资源得到合理分配,windows系统采用进程对系统资源进行管理。进程是一个具有一定独立功能的程序,它是系统动态执行的基本单元。一般情况下,我们将计算机中的进程分为“系统进程”和“用户进程”两种。系统进程用来支持系统基本的运行环境:而用户进程是可以随机创建关闭的,当运行一个程序的时候就会启动一个或多个进程,用户进程的创建和关闭并不会影响系统的正常运行。

关键进程的介绍

    要完成系统操作,就需要很多系统进程提供支持,而“Svchost.exe”就是windows系统的一个核心系统进程。在使用NT内核的windows系统中都会有Svchost.exe的存在。一般情况下windows2000中的Svchost.exe进程的数目为两个,而在windowsSvchost.exe进程的数目上升到了4个以上,在windows2003Vista系统中的数目会更多。

    那么一个系统里面为什么会出现这么多个“Svchost.exe”进程呢?这里就必须从该进程的作用说起。“Svchost.exe”是windows NT内核系统独有的进程,而“Svchost”其实就是“Service Host”(服务宿主)的缩写,它本身并不能给用户提供任何服务,微软官方对它的定义是:“Svchost.exe是从动态链接库(DLL)中运行的服务的通用主机进程名称”,专门为系统启动各种服务,“Svchost.exe”可以同时启动多个服务。”由于系统服务都是以动态链接库形式实现的,他们可以把执行程序指向“Svchost.exe”,因此“Svchost.exe”只有调用某个动态链接库,才可以启动对应的服务。由于系统服务在注册表中都设置了相关参数,因此“Svchost.exe”通过读取某服务在注册表中的信息,就知道应该调用哪个动态链接库来启动该服务了。我们就以“Svchost.exe”进程启动Plug and Play服务为例介绍一下。

   在windows系统开始菜单的“运行”中执行“services.msc”命令,在弹出的服务编辑器中找到Plug and Play服务并双击打开它,从服务对话框可以看到该服务的“可执行文件的路径”为“C:\WINDOWS\system32\services.exe -k DcomLaunch”,说明Plug and Play服务是依靠Svchost.exe调用DcomLaunch参数来实现的,而参数的内容则是存放在系统注册表中。现在再在“运行”中执行“Regedit.exe”命令打开注册表编辑器,转到HKEY_LOCAL_MACHINE\system\CurrentControlSet\Services\PlugPlay项,找到类型为“REG_EXPAND_SZ”的键ImagePtah,其值为%System Root%\system32\Svchost.exe -k DcomLaunch,这就是刚刚在服务窗口中看到的服务启动命令。另外在Patameters项中有个名为ServiceDll的键,其值为“%System Root%\system32\umpnpmgr.dll”,其中umpnpmgr.dll就是Plug and Play服务要使用的动态链接库文件(如图)
。这样Svchost.exe进程通过读取Plug and Play服务注册表信息,就能启动该服务了。

进程管理工具

要想了解系统当前的进程信息,通常情况下有两种方法。第一是在任务栏上选在右键菜单中的“任务管理器”命令,接着在弹出窗口的“进程”标签中就可以查看到当前的进程情况。另一种就是在命令提示符窗口,执行命令“TaskList”就可以看到了,为了直观这里通过任务管理器查看。


类别:电脑常识 | 添加到搜藏 | 浏览() | 评论 (0)
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu