linux 禁用cpu核心,linux – 以编程方式禁用CPU核心

当你做回声0> / sys / devices / system / cpu / cpu< number> / online,接下来会发生什么取决于特定的CPU.在ARM嵌入式系统上,内核通常会禁用驱动特定内核PLL的时钟,以便您有效地获得所需内容.

在Intel X86系统上,您只能禁用中断并调用hlt指令(Linux Kernel会执行此操作).这有效地使CPU处于省电状态,直到被用户请求的另一个CPU唤醒.如果你有一台笔记本电脑,你可以通过读取来自/ sys / class / power_supply / BAT {0,1} / current_now(或所有值,如电压的uevent)的电源来验证当你禁用核心时功耗是否确实下降或使用“powertop”实用程序.

arch / x86 / kernel / smp.c:smp_ops.play_dead = native_play_dead,

arch / x86 / kernel / smpboot.c:native_play_dead() – > play_dead_common() – > local_irq_disable()

在此之前,CPUFREQ还会在禁用CPU之前将CPU设置为最低功耗级别,尽管这似乎并不是绝对必要的.

intel_pstate_stop_cpu – > intel_cpufreq_stop_cpu – > intel_pstate_set_min_pstate – > intel_pstate_set_pstate – > wrmsrl_on_cpu(cpu-> cpu,MSR_IA32_PERF_CTL,pstate_funcs.get_val(cpu,pstate));

在Intel X86上似乎没有官方的方法来禁用实际的时钟和电压调节器.即使有,它也将特定于主板,因此您最接近的赌注可能是调查BIOS,如coreboot.嗯,我意识到除了研究内核资源外我对英特尔一无所知.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值