真正结束您选定的进程

时间:2022-10-01 11:17:35

不少人经常会和进程打交道,当一台计算机感染了病毒时需要关闭病毒进程才能手动查杀,当系统资源严重不足时也需要关闭无用进程释放更多的内存,当我们要删除某个顽固文件时经常会出现当前文件正被使用,这时也要将调用该文件的进程关闭。

如何关闭系统进程呢?往往事与愿违,每次我们要关闭某个进程时都会出现“该进程为关键系统进程,任务管理器无法结束进程”的提示(如图1)。进程关闭失败直接导致了病毒无法清除,资源无法释放,顽固文件无法正常删除的严重后果。一般情况下我们都是使用第三方软件来关闭进程。这些软件或多或少存在着一定的不足,一方面软件需要安装到本地硬盘和系统注册表,另一方面由于不是Windows自带的工具所以在兼容性上存在着隐患。

最近笔者发现了一个小工具,名字叫ntsd。通过他我们可以随时关闭任何进程。该程序只有ntsd.exe一个文件,不需要安装直接运行即可。最重要的一点是默认情况下该程序存放在系统目录中的system32下,与系统充分结合其兼容性可想而知。(例如笔者将WindowsXP系统安装在C:\windows中,则ntsd.exe存在于C:\windows\system32中)

我们通过任务栏的“开始运行输入CMD”进入命令行模式,在命令行模式中输入ntsd来启动该程序。下面我们以关闭LSASS进程为例介绍ntsd的具体用法。

第一步:输入Ctrl+Shift+Esc开启Win-dows任务管理器,一般情况下任务管理器中都不显示PID进程号,我们需要进一步设置。

第二步:在任务管理器中通过菜单中的“查看选择列”,将PID前打上对勾(如图2)。这样任务管理器就能显示PID进程号了,这时我们会看到LSASS进程对应的PID为692(如图3)。

第三步:通过任务栏的“开始运行输入CMD”进入命令行模式。

第四步:在命令行模式中输入“ntsd-Cq―p692”来结束LSASS进程,接着我们再次通过Ctrl+Shift+Esc开启Windows任务管理器就会发现原本存在且不能关闭的LSASS进程已经消失得无影无踪了。

小提示:由于本文我们是以关闭LSASS进程为例,所以在LSASS进程被意外关闭后会出现“因LSASS进程意外关闭而要求重新启动计算机”的提示,遇到这种情况时只需要在命令行模式中运行“shutdown-a”即可。

如果你对这个系统内置的工具感兴趣的话还可以在命令行模式中输入ntsd/?来查看帮助信息。其原理就是由于ntsd是系统自带的调试工具,被调试工具附着的进程会随调试器一起退出,所以执行关闭进程命令后调试工具ntsd会附着在我们希望关闭的进程上,当ntsd退出后自然也会关闭它附着的进程。

因此它可以通杀几乎所有的Windows进程,只有System,SMSS.EXE和CSRSS.EXE这三个进程不能关闭。前两个是纯内核态的进程,最后那个是Win32子系统,ntsd程序本身需要它。ntsd从Windows2000开始就是系统自带的调试工具了。

上一篇:怎样消除10大网络安全隐患 下一篇:“发送到”命令的极限应用