初学Linux电源管理

学习文档出处:

万字整理 | 深入理解Linux电源管理:万字整理 | 深入理解Linux电源管理-CSDN博客

电源管理

因为设备需要用电,而且设备中的各个硬件所需要的电压是不一样的。故计算机需要对硬件的电源状态管理。但是电能并不是免费的,尤其是手机的电池容量是有限的,就需要节约电量,于是乎电源的省电管理就出来了。但是我们是为了愉快地设备,而不是为了一味省电。故为了平衡性能、用户体验和省电,内核就开发出了电源质量管理,让我们更好地使用设备。下图是电源管理的架构图

0

1.电源状态管理

电源状态

描述

睡眠/Sleep

Suspend To RAM

一般称STR,睡眠时,内存不断电,信息储存在内存中,可普通外设唤醒

休眠/Hibernate

Suspend to disk

一般称STD,休眠时,内存断电,信息在swap中,只能电源键唤醒

关机

重启相当于关机再开机,主要init进程进行关闭各个服务进程deamon、发送SIGTERM、SIGKILL、将内存数据同步到磁盘和内核关机

重启

自动睡眠/auto sleep

也称投机睡眠,内核默认情况总是尝试去睡眠,除非wakelock阻止。即睡眠是常态,运行不是常态

1.1 睡眠和休眠的共同点

睡眠和休眠的整体过程是相似的,都是暂停系统的运行、保存系统信息、关闭全部或大部分硬件的供电,这样设备不在使用的情况下可以最小功耗运行;当被唤醒时的过程正好相反,先恢复供电,然后恢复系统的运行,再恢复之前保存的信息,这样设备从电源键或其他外设唤醒时,就可以快速切换到进入运行状态了。

0

2.电源质量管理

2.1 省电管理

我们不使用电脑时可以进行睡眠、休眠甚至关机来进行省电,但是我们使用电脑时也可以有很多办法来省电。这些省电方法又可以分为两类,使用省电和闲暇省电。

2.1.1 CPU频率

Cpu频率架构分为:CPUFreq Govenor决策者、CPUFreq Core中间人和CPUFreq Driver执行者,三者关系是:CPUFreq决策者只能有且仅有一个,负责什么时候调频和调多少,将相应控制指令下发给中间人,中间人负责协调,继续将控制指令下发给CPUFreq执行者,执行者主要与硬件打交道完成相应频率控制。

CPUFreq决策者有6种,每次有且生效其中一个

CPUFreq Govenor决策者

描述

powersave

一直把CPU的频率设置为最大值

performance

一直把CPU的频率设置为最小值

ondemand

按需调整,默认运行在较低频率,系统负载增大时就运行在高频率

conservative

总是把频率往policy的最大值和最小值之间调整

userspace

按照用户空间设置的值进行调节频率

schedutil

根据CPU使用率动态调整频率

0

2.1.2 闲暇省电

闲暇省电

描述

CPU休闲(CPUIdle)

指的是当某个CPU上没有进程可调度的时候可以暂时局部关掉这个CPU的电源,从而达到省电的目的,当再有进程需要执行的时候再恢复电源。

CPU热插拔(CPU Hotplug)

指的是我们可以把某个CPU热移除,然后系统就不会再往这个CPU上派任务了,这个CPU就可以放心地完全关闭电源了,当把这个CPU再热插入之后,就对这个CPU恢复供电,这个CPU就可以正常执行任务了。

CPU隔离(Core Isolate)

CPU隔离指的是我们把某个CPU隔离开来,系统不再把它作为进程调度的目标,这样这个CPU就可以长久地进入Idle状态了,达到省电的目的。CPU隔离能达到一种介于CPUIdle和CPU热插拔之间的效果

动态PM(Runtime PM)

设备的动态电源管理,例如手机的夜间睡眠断网功能,待机关闭相机设备

2.2 电源管理质量 PM Qos

QoS是Quality Of Service(服务质量)平衡省电和性能的关系。

2.2.1 系统级约束-CPU 延迟

CPU延迟是CPU Idle之后从低功耗状态恢复到运行的时间,CPU idle之后可以处于不同的低功耗状态,状态越深越省电,但是恢复的延迟越大。

2.2.2 系统级约束-CPU 降频

CPU频率代表的是CPU运行时的性能,频率越高,性能越强,功耗也越大。故一般进行场景按需降频。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/66422.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于开发/发布/缺陷分离模型的 Git 分支管理实践20250103

基于开发/发布/缺陷分离模型的 Git 分支管理实践 引言 在现代软件开发中,合理的分支管理策略是保证项目成功的关键因素之一。本文将详细介绍一种基于开发/发布/缺陷分离的 Git 分支管理模型,这种模型不仅能提升团队协作效率,还能确保代码质…

数据库回滚:大祸临头时

原文地址 什么是数据库回滚? 数据库技术中,回滚是通过撤销对数据库所做的一项或多项更改,将数据库返回到先前状态的操作。它是维护数据完整性和从错误中恢复的重要机制。 什么时候需要数据库回滚? 数据库回滚在以下几个场景中很…

1月7日星期二今日早报简报微语报早读

1月7日星期二,农历腊月初八,早报#微语早读。 1、公安部:已为一线民警配备执法记录仪130万余部,规范现场执法; 2、浙江提出2035年全省域基本实现共同富裕; 3、“汕头牛肉丸”有新标准!1月6日起…

数据结构:时间复杂度和空间复杂度

我们知道代码和代码之间算法的不同,一定影响了代码的执行效率,那么我们该如何评判算法的好坏呢?这就涉及到了我们算法效率的分析了。 📖一、算法效率 所谓算法效率的分析分为两种:第一种时间效率,又称时间…

Clisoft SOS设置Workarea

Clisoft SOS设置Workarea 本人也是刚刚接触这个软件,可能有些方面不够完善,欢迎大佬指点。 这里就不演示创建创建Server和Project,可以参考Clisoft SOS设置Server和Project 创建Workarea 创建好目录并设置好权限 # 创建组 [bhlumaster ~]$…

【题库】人工智能训练师练习题

单选题 1、Windows系统不能进行数据爬虫。 A.正确 B.错误 2、自然语言处理是一门融语言学、计算机科学、心理学于一体的科学。 A.正确 B.错误 3、文本分类是指将文本按照内容的不同判别到一个或多个预先确定的文本类别之中的过程。 A.正确 B.错误 4、中文分词只局限于中…

安徽省乡镇界面图层+arcgis数据shp格式-乡镇名称和编码2020年+wgs84坐标内容测评

最新安徽省乡镇界面图层arcgis数据shp格式-乡镇名称和编码2020年wgs84坐标无偏移

LabVIEW软件Bug的定义与修改

在LabVIEW软件开发过程中,bug(程序错误或缺陷)指的是程序中导致不符合预期行为的任何问题。Bug可能是由于编码错误、逻辑漏洞、硬件兼容性问题、系统资源限制等因素引起的。它可能会导致程序崩溃、功能无法正常执行或输出结果不符合预期。理解…

WebRTC 在视频联网平台中的应用:开启实时通信新篇章

在当今这个以数字化为显著特征的时代浪潮之下,实时通信已然稳稳扎根于人们生活与工作的方方面面,成为了其中不可或缺的关键一环。回首日常生活,远程办公场景中的视频会议让分散各地的团队成员能够跨越地理距离的鸿沟,齐聚一堂共商…

oracle位运算、左移右移、标签算法等

文章目录 oracle基础函数创建bitor(按位或)函数bitnot(按位非)函数bitxor(按位异或)函数左移函数BITSHIFT()函数(实测不可用,废弃掉该方案)右移函数(略,有此场景吗?) 实际应用资质字典增删改查分别对应什么操作新增对应操作查询对应的操作修改删除(正向…

信息系统管理师试题-人力资源

信息系统管理师试题-人力资源 当组织计划的人力资源需求超过供给时,可通过下列方法解决,其中不包括() A降低录用标准,招聘新员工 B增加临时性员工和使用退休员工 C减少加班数量或工作时间 D提高员工工作效率 答案C 下…

【银河麒麟高级服务器操作系统实例】tcp半链接数溢出分析及处理全过程

了解更多银河麒麟操作系统全新产品,请点击访问 麒麟软件产品专区:https://product.kylinos.cn 开发者专区:https://developer.kylinos.cn 文档中心:https://document.kylinos.cn 服务器环境以及配置 系统环境 物理机/虚拟机/云…

[文献精汇]使用PyCaret预测 Apple 股价

2024年专题 量化专题 共计 102 篇 涵盖量化框架、数据篇、风险与收益、策略篇、多因子模型、编程篇、图形篇、机器学习、Backtrader等主题,全方面了解量化领域知识。机器学习共计29篇 涵盖机器学习基本介绍、监督学习、集成算法、无监督学习以及机器学习实战。研报…

新一代智能工控系统网络安全合规解决方案

01.新一代智能工控系统概述 新一代智能工控系统是工业自动化的核心,它通过集成人工智能、工业大模型、物联网、5G等技术,实现生产过程的智能化管理和控制。这些系统具备实时监控、自动化优化、灵活调整等特点,能够提升生产效率、保证产品质量…

02.02、返回倒数第 k 个节点

02.02、[简单] 返回倒数第 k 个节点 1、题目描述 实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。 2、题解思路 本题的关键在于使用双指针法,通过两个指针(fast 和 slow),让 fast 指针比 slow 指针…

【简博士统计学习方法】第1章:1. 统计学习的定义与分类

自用笔记 1. 统计学习的定义与分类 1.1 统计学习的概念 统计学习(Statistical Machine Learning)是关于计算机基于数据构建概率统计模型并运用模型对数据进行预测与分析的一门学科。 以计算机和网络为平台;以数据为研究对象;以…

PS 解析成ES流

最近做ps 解析,整理了一下: 解析如下: 这里理解为,后面会跟着pes头,在长度F00D-2-0A字节以后。

Android存储方案对比(SharedPreferences 、 MMKV 、 DataStore)

简介:本文介绍了Android开发中常用的键值对存储方案,包括SharedPreferences、MMKV和DataStore,并且对比了它们在性能、并发处理、易用性和稳定性上的特点。通过实际代码示例,帮助开发者根据项目需求选择最适合的存储方案&#xff…

Mycat2使用教程

运行环境框架包 下载地址:mycat2-install-template-1.20.zip 运行包 下载地址:mycat2-1.21-release-jar-with-dependencies.jar 说明 解压运行环境框架包,将运行包放到mycat的lib目录下 配置数据源 打开conf/datasources/prototypeDs.da…

望获实时Linux系统与大语言模型深度融合,开创实时智能无限可能!

大语言模型的崛起为智能化应用开辟了新的可能性。借助深度学习技术,这些模型能够理解和生成自然语言,处理复杂的文本和语义信息。这使得它们在诸如人机问答、内容生成和数据分析等领域展现出巨大的潜力。在实时控制领域,大语言模型能够显著提…