Linux内核的CPU频率 linux内核cpu个数

时钟缩放使得你可以在系统运行期间改变CPU的时钟速度,这是一个省电的好方法,因为越低的时钟速度,CPU会消耗更少的电量。
内容:----------1. CPUFreq 核心原理和接口2. CPUFreq 通知者
1. 概述========================CPUFreq core代码位置在 drivers/cpufreq/cpufreq.c中。这份cpufreq代码给CPUFreq的驱动框架cpufreq_driver(真正的频率改变代码,硬件相关)提供了一个与硬件无关的标准的接口,notifiers也是如此,遵照这套硬件无关的标准接口。诸如策略的改变(例如ACPI高级电源管理的温度感应模块)或所有的频率改变、甚至强制限速(就像在arm上的LCD驱动),都会通知给设备驱动或者其他内核模块。另外,频率的改变会使得内核所谓的常量"loops_per_jiffy"更新。
cpufreq_get_cpu和cpufreq_put_cpu两个方法将确保cpufreq处理器驱动被正确的注册给内核,并且直到cpufreq_put_cpu被调用,否则不会被卸载,cpufreq_get_cpu和cpufreq_put_cpu两个方法的调用带有引用计数。
2. CPUFreq notifiers (CPU频率通知者)========================CPUFreq notifiers 遵照了标准的内核通知接口,标准通知接口 详情查看linux/include/linux/notifier.h
我们有两中不同的CPUFreq notifiers, 包括 策略通知器(policynotifiers)变化通知器(transition notifiers)
2.1 CPUFreq policy notifiers (CPU频率策略通知器)--------------------------------------------------------
当一个新的策略(Policy)将要被设置的时候, CPUFreq policynotifiers会被通知,一个策略的改变将调用CPUFreq policy notifier回调链上的回调3次,分别用以下事件参数:
1.)当CPUFREQ_ADJUST(CPU频率校准过程)时,所有被通知者可以根据需要改变Policy的限制,例如关系到CPU热量温度的问题或是某些硬件相关的限制,会按照需要去改变。
2.)当CPUFREQ_INCOMPATIBLE(CPU频率冲突)时,为了防止硬件故障,而必须改变Policy限制。
3.)当CPUFREQ_NOTIFY(CPU频率通知)时,这个新的策略会通知给所有被通知者。如果在这个阶段,两个硬件驱动未能对新策略达成一致,那么冲突的硬件将被关闭,用户会收到对应的通知。
上述的宏所定义的过程,作为notifier的第二个参数给入。
第三个参数是一个 void*指针,指向一个结构体:cpufreq_policy,cpufreq_policy由5个成员组成:
cpufreq_policy{cpu,min,max,policy,max_cpu_freq}
min,max:新策略的CPU最低,最高频率(kHz)policy: 新策略cpu:有效CPU数max_cpu_freq:cpu的最大支持频率(只是提供信息)
2.2 CPUFreq transition notifiers (CPU频率改变通知器)-------------------------------------------------------------
当CPUFreq驱动调整当前CPU核的频率,并且此调整会带来任何对外界的影响的时候,会通知两次被通知者。
第二个参数声明过程类型:CPUFREQ_PRECHANGE 调整前CPUFREQ_POSTCHANGE 调整后
第三个参数是结构体:cpufreq_freqs 包括成员:{cpu: 有效CPU数old: 旧频率new:新频率}
当系统处于暂停状态(suspended)而调整CPU频率,如果cpufreq core(drivers/cpufreq/cpufreq.c) 检测到频率改变,会通知被通知者,第二个参数被设置为:CPUFREQ_RESUMECHANGE
Linux内核的CPU频率 linux内核cpu个数

  

爱华网本文地址 » http://www.413yy.cn/a/25101017/351819.html

更多阅读

win7如何修改屏幕的刷新频率 win10屏幕刷新频率

win7如何修改屏幕的刷新频率——简介刷新频率图像在屏幕上更新的速度,也即屏幕上的图像每秒钟出现的次数,刷新频率越高,屏幕上图像闪烁感就越小,稳定性也就越高,换言之对视力的保护也越好。win7如何修改屏幕的刷新频率——工具/原料显示

关于3560G的cpu利用率高的问题 3560m cpu

公司一台3560G的cpu利用率这些天一直在80%左右,sh proc cpu sorted查看,IPInput最多,50%以上,处理过程如下:1、使用sh controllers cpu-interface /sh platform port-asic statsdrop /sh ip traffic查看,发现host增长很快bj-fb8-sw3560G

主板815.845.865.915.945支持什么类型的CPU.内存.硬... www.815865.com

1、865及其以下的主板(包括你说的815、845)支持的cpu均是P478的,即早期的赛扬4、赛扬d、奔腾4、奔腾D系列,它们都是478针的。而915、945的主板支持的cpu类型为P775,即775针的cpu,基本都具有超线程技术;2、至于内存条,815的主板支持SDRAM内存

声明:《Linux内核的CPU频率 linux内核cpu个数》为网友成年分享!如侵犯到您的合法权益请联系我们删除