前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux电源管理-概述

Linux电源管理-概述

作者头像
DragonKingZhu
发布2020-03-24 17:15:43
5.5K1
发布2020-03-24 17:15:43
举报

前言

在如今嵌入式可移动设备大热的时期,功耗是检测此设备一项重要的指标。如何能做到手机待机时间长久,而且用户还能玩的尽兴,这时候就必须对设备进行省电管理。那用什么省电方式呢? 比如在手机听音乐的时候关闭屏幕,在看电影的时候调节屏幕亮度等都可以用来省电。这些方法在linux操作系统中已经做了统一的实现: suspend/resume机制。本节就简单认识下linux下的电源管理。

电源状态

  1. On (on) S0-Working
  2. Standby (standby) S1- CPU and RAM are powed but not executed
  3. Suspend to Ram (mem) S2- RAM is powered and the running content is saved to RAM
  4. Suspend to Disk (disk) S3 - All content is saved to Disk and power down

S0状态也就是计算机正常工作状态。

S1状态简称standby状态,此状态下CPU处于低功耗状态,并且没有数据保存到RAM或者disk中,此状态待机和恢复通常很快。

S2状态简称STR,此状态下计算机会冻结所有的活动并将当前工作状态保存到RAM中,然后关闭屏幕进入低功耗模式,通常睡眠和唤醒需要几秒。

S3状态简称SRD或者Hibernate,代表冬眠,意识是比较长久,一般在window系统中常见到。此状态下计算机将所有活动的状态保存到磁盘中,然后处于关机状态,此模式下是不耗电的,而相比之前的模式,休眠和唤醒的速度都比较慢。

下图是四种状态的功耗和唤醒速度对比。

关于suspend/standby/hibernate的区别可以看此地址:http://blog.csdn.net/vaqeteart/article/details/4158058

睡眠唤醒体验

如果你用的系统是window,就可以直接在开始按钮出,选择各种睡眠类型。

如果你用的是linux,就可以直接通过命令行操作,以我的系统Ubuntu为例子:

1. 查看系统支持的睡眠方式

代码语言:javascript
复制
root@test:~$ cat /sys/power/state 
mem disk

可以看到ubuntu系统支持的睡眠方式有,suspend to ram和suspend to disk

2. echo mem > /sys/power/state

此方式就可以达到睡眠,按任意按键可以唤醒计算机。

在android手机上查看睡眠方式。

代码语言:javascript
复制
root@test:/ # cat /sys/power/state                                    
standby mem

可以看到手机上没有disk方式,因为嵌入式都不带disk设备的。

通过echo mem > /sys/power/state可以使手机睡眠,同时按下power按键可以唤醒手机。

Loopers

发布了176 篇原创文章 · 获赞 99 · 访问量 36万+

他的留言板 关注

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 电源状态
  • 睡眠唤醒体验
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档