分享两种处理tcpsvcs.exe占用虚拟内存过高的办法

来源:爱站网时间:2021-05-15编辑:网友分享
tcpsvcs.exe是微软Windows网络组件的一部分,但某天用户打开任务管理器后,居然发现tcpsvcs.exe进程占用了1.9g的虚拟内存,这明显是严重超量了,该怎么办呢?下面小编将为你分享两种处理tcpsvcs.exe占用虚拟内存过高的办法。

  故障现象:

  公司有一台用于DHCP服务+文件共享服务的服务器,操作系统为windows server 2003 企业版+SP2。打开任务管理器,发现一名为tcpsvcs.exe的进程,占用了约1.9G的虚拟内存。而与其使用类似功能的另一服务器,该进程只使用了不到10M的虚拟内存,差距巨大,明显异常。

  故障处理过程及原因:

  上网查找tcpsvcs.exe的相关信息,得到的解释的是:“tcpsvcs.exe是微软Windows网络组件的一部分。这个系统进程用于计算机使用专用的TCP/IP网络服务,例如DHCP,简单TCP和打印服务。这个程序对你系统的正常运行是非常重要的。”

  进一步,打开命令提示符窗口,运行 tasklist /svc 命令,查看各进程所关联的服务,看到如下的结果:

  svchost.exe 1904 TapiSrv

  svchost.exe 1916 TermService

  tcpsvcs.exe 2032 DHCPServer

  mcshield.exe 2076 McShield

  svchost.exe 2240 W3SVC

  可见,在本机上,tcpsvcs.exe只与DHCP服务有关。

  尝试将DHCP服务重启,发现虚拟内存立即恢复至正常。第二天一早,再次查看,发现虚拟内存又达到了1.9G。和另一台正常的DHCP服务器,比较DHCP服务中设置的相关参数,未发现异常。

  求助于互联网这个百科全书,输入相关内容进行搜索,并没有发现什么有价值的内容。又访问微软的支持与帮助中心http://support.microsoft.com ,经查找,发现了一条与我所述情况非常接近的知识库文章 http://support.microsoft.com/kb/939928/zh-cn。按该文章的说法:“因为 Dnsapi.dll 模块未正确管理一些内存资源,将出现此问题。”而且,如果关闭DHCP配置参数中的DNS动态更新设置,这个问题就不会出现。经测试,发现我的情况确实如此。

  解决方法:

  方法一:禁用DHCP的DNS动态更新功能

  1、单击开始,单击运行,键入dhcpmgmt.msc,然后单击确定

  2、在控制台树中,用鼠标右键单击对应于 DHCP 服务器的节点,然后单击属性

  3、在DNS选项卡上,单击以清除根据下面的设置启用 DNS 动态更新复选框,然后单击确定

  4、重新启动 DHCP 服务器服务。例如,在命令提示符下键入以下命令,然后按 ENTER 键:Net stopDHCPServer & & Netstart DHCPServer

  这个方法适合于没有DNS动态更新需要的情况。但如果有内部的DNS服务,且需要通过DHCP服务,将DHCP客户端的机器名与IP地址的映射关系更新到DNS服务中,以实现通过机器名访问内部电脑的需求的话,这个功能是不能禁用的。

  方法二:更新补丁

  微软已针对该问题有了补丁,但由于windows server 2003 的SP3 服务包还没有发布,所以,只能单独下载。下载的方法如下:

  1、打开该知识库文章 http://support.microsoft.com/kb/939928/zh-cn

  2、点击页面上端的“可用热修复补丁程序”后,会自动跳转至相应的下载页面。

  3、选择相应版本的补丁程序,并输入你的邮箱地址并提交后。会将相应的下载地址发到你填写的邮箱中。按邮件的说明和链接下载即可。

  这个方法是根本的解决之道。但也有一定的风险,如果选择版本错误,或者因为一些其它原因,安装后,可能会出现其它的问题。所以,用这个方法前,一定要仔细确认你的问题,是否与知识库文章中所述的一致,确认选择的补丁版本是正确的,确认你的windows server 2003 是已经打了SP1或SP2的等。

  上面两种方法都可以用于处理处理tcpsvcs.exe占用虚拟内存过高的情况,如果你也发现你电脑的tcpsvcs.exe进程占用虚拟内存过高的情况,就可以根据以上方法去处理。

上一篇:备份win2003的软raid信息的具体方法

下一篇:分享两种让WIN2003服务器支持FLV视频播放的方法

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载