程序控制cpu占用率介绍

我们知道任务管理器每一秒钟刷新一次,这就要在这一秒钟内,使CPU的平均使用时间和空闲时间各占50%. 而不是让CPU使用1秒钟,空闲一秒钟。windows的调度时间片为10ms, 那么在编程时可以让cpu不停的工作10ms, 然后空闲10ms, 空闲操作通过sleep(10)来实现。这样最后任务管理器在刷新CPU占用率的时候就会得到这个一秒钟内的CPU的平均使用率。显示出50%的水平。

通过空循环,来让cpu保持繁忙的工作状态,通过sleep使cpu空闲。机器指令最接近的是汇编语言。而空的for 循环,换成汇编语言是大概5句,现在的CPU可以在一个时钟周期执行两个机器指令,相当于执行两个汇编语句。

现在假设电脑的主频是3.2G,则每秒可以执行 3200000000*2/5=1280000000条空循环语句。 应该分时间片的执行一个时间片10ms, 所以执行空循环应该为12800000次。

因此用C语言可以这样编写程序:

#include
#include

int main(int argc, char *argv[])
{
long n=12800000; //n表示执行的空循环次数
int i=0;
while(1)
{
for(i=0;i
{
//空循环
}
sleep(10);
}
system("PAUSE");
return 0;
}

(0)

相关推荐

  • CPU占用率一直很高怎么办

    Windows XP CPU占用100%情况分析解决 我们在使用Windows XP操作系统的时候,用着用着系统就变慢了,一看“任务管理器”才发现CPU占用达到100%。这是怎么回事情呢?遇到病毒了, ...

  • 在Linux系统中限制CPU占用率的教程

    Linux内核是一名了不起的马戏表演者,它在进程和系统资源间小心地玩着杂耍,并保持系统的正常运转. 同时,内核也很公正:它将资源公平地分配给各个进程. 但是,如果你需要给一个重要进程提高优先级时,该怎 ...

  • 电脑进程中KeyShot的CPU占用率很大怎么解决?

    电脑进程中KeyShot的CPU占用率很大怎么解决?

  • Win10 电脑CPU占用率高解决办法

      Win10 电脑CPU占用率高解决办法 方法一:减少电脑启动项 按Win+R键打开运行窗口,输入msconfig,点击确定; 在系统配置窗口中,切换至启动项,点击打开任务管理器,禁用一些不必要的启 ...

  • Win10 电脑CPU占用率高解决办法(图文教程)

    许多用户反映使用Win10时发现CPU占用率很高,系统变得很卡,非常头疼,Win10 CPU占用率高怎么办呢?下面告诉大家几种Win10 CPU占用率高的解决方法,以供参考. 解决方法 方法一:减少电 ...

  • win10系统偶尔出现CPU占用率100%问题怎么解决?

    最近很多童鞋都在微信问小编为啥Windows 10系统偶尔出现CPU占用率100%的问题.这个问题可有点难为坏了小编,因为引起这个现象的因素有很多.不过,小编还是有一个压箱底的绝招,各位小伙伴们可以尝 ...

  • 怎么降低过高的电脑cpu占用率?

    电脑打开的应用多了,CPU可能占用过高,造成卡顿等问题,今天小编介绍一下它的降低方法.具体如下:1. 第一步,按快捷键shift+ctrl+esc打开win10系统的任务管理器.2. 第二步,点击选中 ...

  • 如何解决电脑CPU占用率高问题

    电脑是现在最常用的办公设备,有些用户常常会遇到CPU占用率高问题,不知道如何解决,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步鼠标右键单击[此电脑]图标,在弹出的菜单栏中根据下 ...

  • 解决开机时CPU占用率过高致系统缓慢

    网上有很多关于开机时SVCHOST.exe的CPU占用率过高问题的文章,基本上都说出了绝大部分用户的情况并给出解决方案,我引用一篇网上随便搜索的关于这SVCHOST的文章给大家看看,如果大家也有类似的 ...