直到本周早些时候 Windows 8.1 更新之前,我的笔记本电脑性能从未出现过问题。起初,我以为可能是恶意软件,所以我运行了各种工具并进行了扫描(这花了我很长时间),但没有发现任何问题,笔记本电脑的性能非常糟糕:文件夹、程序和网站需要几分钟才能加载,好像 I/O 操作速度减慢了 20 倍,Chrome 显示“等待缓存...”然后我进行了系统还原,这解决了过去的其他问题,但出于某种原因,我只有一个还原点,回滚并没有解决问题。
然后我遇到了这个问题: windows 7 在安全模式下很快但在正常模式下非常慢
这正是我的问题,在安全模式下,我可以正常使用一切(但笔记本电脑过热严重,因此应避免使用临时解决方法)!然后按照那里的建议,我尝试在调试模式下重新启动,并逐步打开不同的服务,但正如有人建议的那样,MS 不太可能是导致问题的原因,因此我选择了所有 Windows 服务并将它们全部打开……猜猜怎么着,问题又回来了。
所以现在我的问题是,如何找到导致问题的服务以便可以禁用它?有几种方法可以采用试错法,其中许多方法相互依赖...
提前致谢,非常感谢任何帮助!
答案1
使用 Windows任务管理器找出 CPU 时间的使用情况(如果这是一个问题的话)。
- 按下CtrlShiftEsc打开任务管理器。
- 点击细节标签。
- 点击中央处理器标题按使用时间排序。
- 通常,服务运行于进程管理器,并且有许多实例同时运行。查找违规者的进程 ID (PID),在此示例中,1808。
- 点击服务标签。
- 点击PID标头按 ID 排序。
- 遗憾的是,在这个例子中三项服务在该 ID 下运行,但至少这样可以将问题缩小到其中之一。关闭一次一个找出罪魁祸首。
微软(Sysinternals)进程探索器(体育)会提供更多信息。具体来说,如果问题是由于磁盘 IO 过多引起的,PE 可以显示磁盘 IO 信息。
答案2
服务也可能使用更多内存,这会导致 Chrome 速度变慢,因为 Chrome 也需要更多 RAM。要根据内存使用情况过滤服务,请使用以下命令tasklist
:
TaskList /SVC /FI "memusage gt 12345" /FI "imagename eq svchost.exe"
该命令的作用是什么?简而言之,该命令显示所有服务(/svc
),然后过滤掉(/fi
)具有可执行名称且内存使用量大于 12345 的进程svchost.exe
。根据需要更改此内存使用量上限。要理解完整命令,请将长命令分成几部分:
TaskList /SVC
:显示所有服务/FI "memusage gt 12345"
:过滤掉内存使用量大于12345的进程。/FI "imagename eq svchost.exe"
:过滤掉带有可执行文件名称的进程svchost.exe
。
输出将会像这样:
Image Name PID Services
========================= ======== ============================================
svchost.exe 772 BrokerInfrastructure, DcomLaunch,
SystemEventsBroker
svchost.exe 1412 BFE, mpssvc
svchost.exe 1612 Winmgmt
一个进程中可能存在多个服务svchost.exe
。从 Windows 10 Creators Update 开始,如果计算机拥有超过 3.5 GB 的 RAM每个服务都有其独立的流程。