Advanced Configuration and Power Management Interface(ACPI)是由Intel,Microsoft等厂家订的一套Spec,规范了OS,APP对于电源的管理。
ACPI涉及很广,这里仅涉及一些System Power Management, Device Power Management.

System PM:
S0: working mode
S1: CPU停止工作, CPU,RAM继续供电,cache flush到Ram,Device若无必要则处于Power off状态
S2:, re-fresh ram, cache数据丢失,CPU断电.
S3: Standby(Sleep), CPU power off, ram进入slow refresh mode, power supply in reduced power mode.
S4: hibernate, HW完全进入Power off 状态,数据存入disk.
s5: off, shutdown, 没有数据被保存,需要reboot.

Device PM:
D0: fully on.
D1,D2:一般没太大区别,有Device自行决定在D1,D2状态下的行为
D3: bus不能工作了, Device有继续供电,可以主动发起Power请求,进入D0,D1,D2状态.
D4: off, bus不能工作.Device没有供电,完全power off状态.
Device必须支持D0,如果Device收到OS的请求进入它不support的状态,可以直接跳到下一个Power state.比如,OS请求进入D1,Device可以直接进入D3.

Sx <--> Dx, 对应关系
system(Sx)跟device(Dx)之间不需要有固定的对应关系,S0的时候,device也可以进入D3. Device的state由Driver,Power Manager控制.

Windows下有IRP_MN_QUERY_POWER,IRP_MN_SET_POWER
对于NDIS Miniport driver,有OID_PNP_SET_POWER,OID_PNP_QUERY_POWER,OID_PNP_ADD_WAKE_UP_PATTERN,OID_PNP_ENABLE_WAKE_UP等OID来控制.
在Windows下,在控制面板=>电源管理里,可以对Wireless adapter可以选择:Maximum Performance, Low Power Saving, Medium Power Saving, Maximum Power saving,对应OID_DOT11_POWER_MGMT_REQUEST.

System and Device power management.的更多相关文章

  1. Zephyr的Power Management

    1 关于Zephyr Zephyr是Linux基金会维护的微内核项目,来源于WindRiver向Zephyr捐赠的Rocket RTOS内核.主要用于开发针对物联网设备的实时操作系统. Zephyr操 ...

  2. Power management in semiconductor memory system

    A method for operating a memory module device. The method can include transferring a chip select, co ...

  3. Linux下Power Management开发总结

    本文作为一个提纲挈领的介绍性文档,后面会以此展开,逐渐丰富. 1. 前言 在 <开发流程>中介绍了PM开发的一般流程,重点是好的模型.简单有效的接口参数.可量化的测试环境以及可独性强的输出 ...

  4. PatentTips - Power management implementation in an optical link

    BACKGROUND INFORMATION Embodiments of the present invention are directed to optical links and, more ...

  5. Power Management开发的一般流程

    本文作为一个提纲挈领的介绍性文档,后面会以此展开,逐渐丰富. 开发流程 针对一个PM feature进行开发,设计模型是第一步.模型设计好之后,还要保留参数接口,可以基于这些参数针对特殊个体进行优化. ...

  6. Power Management of Hybrid DRAM/PRAM-Based Main Memory

    0.ABSTRACT (1)non-volatile memory——low standby power DRAM——high performance and better active power ...

  7. Device Drivers Should Not Do Power Management

    有人对现有的电源管理提出了意见,认为驱动程序不应该做电源管理,paper地址在这里: http://www.ruf.rice.edu/~mobile/publications/xu2014apsys. ...

  8. PHP: Browser, Operating System (OS), Device, and Language Detect

    https://github.com/sinergi/php-browser-detector Device.php: <!DOCTYPE html> <html> <h ...

  9. Hackintosh Power Management

    Also, be aware that hibernation (suspend to disk or S4 sleep) is not supported on hackintosh. You sh ...

随机推荐

  1. 【HDOJ 1272】小希的迷宫(并查集+无环图)

    描述 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走.但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就是说如果有一个通道 ...

  2. 【前行】◇第3站◇ 国庆训练营·OI制模拟赛

    [第3站] 国庆训练营·OI制模拟赛Ⅰ 怀着冲刺提高组400的愿望来到这个very small but very interesting 的训练营QwQ 在北大dalao的带领下开始了第一场OI模拟赛 ...

  3. 单机安装hadoop+hive+presto

    系统环境 在个人笔记本上使用virtualbox虚拟机 os:centos -7.x86-64.everything.1611  ,内核 3.10.0-514.el7.x86_64 注:同样可以使用r ...

  4. Shell 脚本进程并发&进程数控制

    Shell 都以串行的方式自上而下执行命令,不适用需要大量作业的场景. 学习此篇shell脚本进程并发,能够大大提高工作效率~ 通过wait 和 & 后台符号 可以实现并行,但无法控制进程数. ...

  5. 关于antd-mobile中列表上拉加载PullToRefresh的使用

    相信有很多小伙伴发现antd-mobile中的下拉刷新组件,也发现例子挺难的,其实这个组件并没有那么复杂,只是demo例子不好理解,给大家提供一个简单的demo,或许可以帮到你 上拉刷新下拉加载 - ...

  6. Apache httpd Server 配置正向代理

    背景 代理(Proxy),位于客户端与实际服务端之间,当客户端需要请求服务端内容时,先向代理发起请求,代理将请求转发到实际的服务器,再原路返回.也可以在代理服务器设置缓存,将实际服务器上不常变化的内容 ...

  7. Leecode刷题之旅-C语言/python-1.两数之和

    开学后忙的焦头烂额(懒得很),正式开始刷leecode的题目了. 想了想c语言是最最基础的语言,虽然有很多其他语言很简单,有更多的函数可以用,但c语言能煅炼下自己的思考能力.python则是最流行的语 ...

  8. shell重温---基础篇(函数操作)

        linux shell 可以用户定义函数,然后在shell脚本中可以随便调用.shell中函数的定义格式如下: [ function ] funname [()] { action; [ret ...

  9. WPF 构建无外观(Lookless)控件

    原文:WPF 构建无外观(Lookless)控件 构建一个用户可以使用Template属性设置外观的WPF控件需要以下几步 1.继承自System.Windows.Controls.Control 2 ...

  10. Hibernate-ORM:06.Hibernate中三种状态

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 本篇博客主要叙述Hibernate中的三种状态:临时状态(瞬时状态),持久状态,游离状态 commit和flu ...