作者:wowo 发布于:2015-11-10 22:04

分类:电源管理子系统

也许大家会觉得奇怪:为什么Linux kernel把对ARM big·Lttile的支持放到了cpufreq的框架中?

众所周知,ARM的big·Little架构,也称作HMP(具体可参考“Linux CPU

core的电源管理(2)_cpu topology”中相关的介绍),通过在一个chip中封装两种不同类型的ARM

core的方式,达到性能和功耗的平衡。这两类ARM Core,以cluster为单位,一类为高性能Core(即big

core),一类为低性能Core(即Little

core),通过它们的组合,可以满足不同应用场景下的性能和功耗要求,例如:非交互式的后台任务、或者流式多媒体的解码,可以使用低功耗的Little

core处理;突发性的屏幕刷新,可以使用高性能的big core处理。

那么问题来了,Linux kernel怎么支持这种框架呢?

注1:本文很多理论性的表述,或多或少的理解并翻译自:“http://lwn.net/Articles/481055/”,感兴趣的读者可以自行阅读。

注2:本文基于

作者:wowo 发布于:2015-6-13 22:20

分类:电源管理子系统

linux kernel主要通过三类机制实现SMP系统CPU core的电源管理功能:

1)cpu hotplug。根据应用场景,enable/disable CPU core,具体可参考“Linux CPU core的电源管理(4)_cpu control”。

2) cpuidle framework。在没有进程调度的时候,让CPU core进入idle状态,具体可参考“cpuidle framework系列文章”。

3) cpufreq framework。根据使用场景和系统负荷,调整CPU core的电压(voltage)和频率(frequency),具体可参考本文以及后续cpufreq相关的。

对CPU core来说,功耗和性能是一对不可调和的矛盾,通过调整CPU的电压和频率,可以在功耗和性能之间找一个平衡点。由于调整是在系统运行的过程中,因此cpufreq framework的功能也称作动态电压/频率调整(Dynamic Voltage/Frequency Scaling,DVFS)。

本文主要从功能说明和软件架构两个角度介绍cpufreq framework。

linux进程调度HMP,hmp相关推荐

  1. linux --- 进程调度

    2019独角兽企业重金招聘Python工程师标准>>> Linux进程调度笔记 一:Linux进程的四大要素 1:一段供进程执行的程序,该程序可以被多个进程执行. 2:独立的内核堆栈 ...

  2. linux进程调度浅析

    linux进程调度浅析 操作系统要实现多进程,进程调度必不可少. 有人说,进程调度是操作系统中最为重要的一个部分.我觉得这种说法说得太绝对了一点,就像很多人动辄就说"某某函数比某某函数效率高 ...

  3. 【Linux系统编程】Linux进程调度

    00. 目录 文章目录 00. 目录 01. 概述 02. 优先级 03. 实时进程的调度 04. 普通进程的调度 05. 调度程序的效率 06. 调度触发时机 07. 其它问题 08. 附录 01. ...

  4. 【Linux系统编程】Linux 进程调度浅析

    概述 操作系统要实现多进程,进程调度必不可少.有人说,进程调度是操作系统中最为重要的一个部分.我觉得这种说法说得太绝对了一点,就像很多人动辄就说"某某函数比某某函数效率高XX倍"一 ...

  5. linux下进程调度模拟程序,linux认证辅导:linux进程调度模拟怎么做?

    /*模拟实现LINUX进程调度的静态优先级算法和时间片轮转算法引入LINUX调度 */ #include #include #include #include #include #define RUN ...

  6. linux进程调度之 FIFO 和 RR 调度策略

    转载 http://blog.chinaunix.net/uid-24774106-id-3379478.html  linux进程调度之 FIFO 和 RR 调度策略 2012-10-19 18:1 ...

  7. 计算机进程调度论文,计算机操作系统小论文Linux进程调度.doc

    计算机操作系统小论文Linux进程调度.doc Linux进程调度 一.概述 自1991年Linux操作系统出现以来,Linux操作系统以令人惊异的速度迅速 在服务器和桌面系统中获得了成功.它已经被业 ...

  8. (7)Linux进程调度-O(1)调度算法

    <(1)Linux进程调度> <(2)Linux进程调度器-CPU负载> <(3)Linux进程调度-进程切换> <(4)Linux进程调度-组调度及带宽控制 ...

  9. Linux进程调度:完全公平调度器 Completely Fair Scheduler 内幕| linux-2.6

    https://www.ibm.com/developerworks/cn/linux/l-completely-fair-scheduler/index.html? 目录 Linux 调度器简史 C ...

  10. (6)Linux进程调度-实时调度器

    目录 背景 1. 概述 2. 数据结构 3. 流程分析 3.1 运行时统计数据 3.2 组调度 3.3 带宽控制 3.4 调度器函数分析 3.4.1 pick_next_task_rt 3.4.2 e ...

最新文章

  1. .net new一个类为什么报空指针_谈谈.NET对象生命周期
  2. 剑指Offer #13 调整数组顺序使奇数位于偶数前面 | 图文详解
  3. Linux怎么更改声音板卡顺序,51CTO博客-专业IT技术博客创作平台-技术成就梦想
  4. 2pc 3pc_在1990年代如何宣传PC
  5. 前端学习(2818):小程序学习之文件建立
  6. [From 1.1~1.2]CLR的执行模型
  7. Android插件丢失怎么办,Android studio推荐插件以及升级后插件丢失问题解决
  8. 中国基因工程行业市场供需与战略研究报告
  9. 新窝开张,自己祝贺一下。
  10. Linux音频驱动-ASOC之Machine
  11. UI自动化测试工具-国产和国外
  12. 1分钟教你快速使用C#查找和替换PDF文件中的文本
  13. OpenGL三维图形编程技术(转)
  14. python运行环境搭建以及常见问题解决
  15. [telink sig mesh] 周期Publish
  16. 用javascript自定义SharePoint文档库/列表项菜单
  17. 使用STM32CubeMX 快速生成 USB HID 工程 - STM32F107VCT6
  18. Python中利用Opencv进行车牌号检测
  19. 144.如何评价个性化推荐系统的效果-1
  20. 采油高级工实际计算机,采油工高级实际管柱图.ppt

热门文章

  1. Macbook Pro 201 装Win10 声卡_苹果电脑真那么耐用吗?我拿五年前的Mac试了试-苹果,MacBook ——快科技(驱动之家旗下媒体)-...
  2. js和 ts 将大数字金额转换成带单位的数字金额,万,千万,亿,格式化金额数字,格式化成带单位的金额,附ts版代码
  3. 文科生学python系列_文科生学Python系列15:泰坦尼克数据1
  4. pagerank算法总结
  5. 简单几步教会你如何在M1版macbook上安装iphone/ipad应用
  6. 解决关于加速器加速热点连不上,或者没有网络失效问题
  7. android编译做cmcc分支宏
  8. ECharts可视化大屏学习笔记【4】(折线图)
  9. loadrunner--步长(Pacing)的设置及作用
  10. 【Java二十周年】回忆我与Java的点点滴滴