谁知道[降温软件]实现的原理..最好有源代码! 过去在哪个杂志看过:好象是让CPU空闲得时候利用起来,紧忙的时候减慢指令的执行,记得不太清楚了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 像屏保一样,低优先级线程,系统闲置的时候就运行,不停的nop,nop,nop,,,...上帝。 不是nop,是Halt指令,CPU空转也要消耗能量的,不过做起来很多的问题要解决,首先好像要有Ring0的特权?原理是知道的,程序是写不出来的。:( 很简单嵌入汇编执行hlt指令 好象再win 9x和winNT中是不同的。HLT指令。 hlt指令好像是没错,不过嵌入进去以后好像没什么用 工欲善其事,必先利其器,首先应该明白整个原理和过程:在Win9X、WinNT/2000中,执行的最小单位是线程。线程的状态有两种:运行、阻塞。处于阻塞态的线程由于条件不满足而无法继续执行,所以在系统的任务调度中就不再分配CPU时间片;如果在一段临界时间里,所有的线程都处于阻塞态,并且没有外部中断,则此时操作系统进入Idle状态;如果此时有线程恢复运行,或是有外部中断,则系统退出Idle状态。由于处于Idle状态的系统没有任何需要执行的线程代码,所以此时要么是在空循环(NOP)等待,要么使CPU暂停(HLT)。当然,空循环(NOP)对于CPU来说还是在执行指令,所以CPU仍旧在全速运行;而暂停(HLT)指令对于CPU来说,会使CPU中的许多部分停止工作,CPU处于一种半睡眠状态,此时的功耗就小得多,当然产生的热量也少很多。当系统退出Idle状态时,CPU会重新恢复工作状态,这个过程非常迅速。其实在Win2000中已经有这个功能,PID为0的进程便是Idle处理进程,已经拥有了HLT功能,而Win9X没有。但是有一点需要知道:只有在Ring0的状态下执行HLT才会有效,因为CPU会屏蔽所有非特权级的特权指令,当然HLT也是其中之一。 如果实现HLT指令!主要就在这里啊! 实在没有必要,从Win2000开始OS已经具备了这个功能,即使你做出来了,也用不了多少时间 请教一个老问题:delphi编程读与写注册表中多字符串值(REG_MULTI_SZ)的问题 帮忙把一段JS代码转成DELPHI代码 请问那有财务发票样子的表格控件 Delphi如何存取Oracle数据库中的图片数据呢? 请问如何把delphi6里的fastnet里的控间拿到delphi7里来用? API問題 网管程序谈,大家请进(不管你是高手,还是菜鸟,你都会学到很多知识)。 心情不爽来放点血(1) 请问dll文件怎么写 怎样散分??? 谁能解决我的问题,高分奉送???????? 如何使用这个报表控件??????????
嵌入汇编
执行hlt指令
好象再win 9x和winNT中是不同的。
HLT指令。
在Win9X、WinNT/2000中,执行的最小单位是线程。线程的状态有两种:运行、阻塞。处于阻塞态的线程由于条件不满足而无法继续执行,所以在系统的任务调度中就不再分配CPU时间片;如果在一段临界时间里,所有的线程都处于阻塞态,并且没有外部中断,则此时操作系统进入Idle状态;如果此时有线程恢复运行,或是有外部中断,则系统退出Idle状态。由于处于Idle状态的系统没有任何需要执行的线程代码,所以此时要么是在空循环(NOP)等待,要么使CPU暂停(HLT)。当然,空循环(NOP)对于CPU来说还是在执行指令,所以CPU仍旧在全速运行;而暂停(HLT)指令对于CPU来说,会使CPU中的许多部分停止工作,CPU处于一种半睡眠状态,此时的功耗就小得多,当然产生的热量也少很多。当系统退出Idle状态时,CPU会重新恢复工作状态,这个过程非常迅速。
其实在Win2000中已经有这个功能,PID为0的进程便是Idle处理进程,已经拥有了HLT功能,而Win9X没有。但是有一点需要知道:只有在Ring0的状态下执行HLT才会有效,因为CPU会屏蔽所有非特权级的特权指令,当然HLT也是其中之一。