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. ABAP术语-Method

    Method 原文:http://www.cnblogs.com/qiangsheng/archive/2008/03/05/1091077.html Component of classes in ...

  2. bootstrap-daterangepicker插件运用

    引入:daterangepicker.css.daterangepicker.js.moment.js.moment.min.js 链接:https://files.cnblogs.com/files ...

  3. 你知道JQuery中的事件冒泡吗,他是怎么执行的,如何来停止冒泡事件?

    事件冒泡 首先需要知道什么是事件冒泡? 事件冒泡是从里面的往外面开始触发的,就是点击子节点,会向上触发父节点,祖先节点的点击事件 demo: <html xmlns="http://w ...

  4. 上传文件到阿里云linux服务器

    在“运行”中输入cmd,打开控制台,切换到刚才Putty的安装目录下,我的是E:\Putty,然后输入pscp命令,我们需要这个命令来实现文件的上传.如下图所示,命令格式为: pscp D:\recy ...

  5. 为何要搭建ES6开发环境,如何搭建ES6开发环境?

    1.ES6需要搭建开发环境,原因是现在的Chrome浏览器已经支持ES6了,但是有些低版本的浏览器还是不支持ES6语法的,这就需要我们把ES6的语法自动转变成ES5的语法.   2.开始搭建环境   ...

  6. phpstudy启动时Apache启动不了

    打开cmd,输入:D:\phpStudy\PHPTutorial\Apache\bin\httpd.exe -t 回车,即显示错误信息 说是我们的有一个文件目录不存在或者不可读取, 出现这个一般有两种 ...

  7. JavaScript实现判断图片是否加载完成的3种方法整理

    JavaScript实现判断图片是否加载完成的3种方法整理 有时候我们在前端开发工作中为了获取图片的信息,需要在图片加载完成后才可以正确的获取到图片的大小尺寸,并且执行相应的回调函数使图片产生某种显示 ...

  8. Infinite Maze CodeForces - 196B

    We've got a rectangular n × m-cell maze. Each cell is either passable, or is a wall (impassable). A ...

  9. 10---git安装

    卸载原来的版本: # 查看版本 git --version # 移除原来的版本 yum remove git 安装依赖库: yum install curl-devel expat-devel get ...

  10. Tensorflow之MNIST的最佳实践思路总结

    Tensorflow之MNIST的最佳实践思路总结   在上两篇文章中已经总结出了深层神经网络常用方法和Tensorflow的最佳实践所需要的知识点,如果对这些基础不熟悉,可以返回去看一下.在< ...