原因分析:
我们还是先从单核CPU的角度来说这个问题。一个CPU同一时间其实只能处理一条指令。但实际上我们在使用计算机时可能会处理多个工作,比如同时在浏览网页,听音乐等等。
此时,CPU是划分成多个时间片,分别来处理这些事务。比如每个人物花费1ms的时间去进行处理,那这里就要引入一个中断的概念,也就是说当1个事务还未完全处理时,如果其分配的时间片用完或者有高优先级程序需要抢先运行,那么就会通过中断机制,暂停前一个进程的运行,空出资源运行下一个进程。
这就是中断进程的功能。如果你所运行的程序都是对实时性要求比较高,或者互相之间会争抢优先级的话,就可能导致中断进程占用资源上升,特别是当程序之间有冲突等情况的话,该项资源可能所占据的资源会更高。
解决方法:
所谓“系统中断”可以理解为系统命令自相矛盾陷入死循环了,你看下“系统中断”占用CPU大的时候CPU频率是不是几乎100%了?而且你刚开机是不会的,就是某个时间开始出现,只要不重启,注销用户也没用。
出现这个问题,是因为你改动了电源计划配置,比如在编辑计划设置那里,你选了计算机进入睡眠状态为“从不”,然后你又在更改高级电源设置那里,在此时间后休眠这一选项,填了具体的分钟数,比如“360分钟”,这样开机满6小时的时候,这边说要休眠,那边说从不睡眠,就进入”系统中断“自相矛盾了,也可以理解为Win7的Bug之一。
解决办法就是恢复电源选项的默认设置,或者,如果你选了计算机进入睡眠状态为“从不”,高级设置的休眠时间那里填上“0”分钟(0分钟=从不休眠),这样就不冲突了。
所以一些系统设置导致的系统陷入死循环很有可能会导致系统中断占用很高的CPU,如果遇到的朋友不妨检查一下是不不上述的设置影响到你的电脑。
有兴趣的可以再验证一下:从不睡眠,然后高级选项休眠时间那里填“5”分钟,包你5分钟后出现“系统中断”占用CPU急剧上升。