编写设备驱动程序

多个电源管理组件

对于电源管理框架而言,所有组件均“一视同仁”,并且组件之间完全无关。如果组件状态不完全兼容,则设备驱动程序必须确保不会出现不需要的状态组合。例如,帧缓存器/监视器卡具有以下几种可能状态: D0D1D2D3。与卡连接的监视器具有以下几种可能状态: OnStandbySuspendOff。这些状态并不一定相互兼容。例如,如果监视器处于 On 状态,则帧缓存器必须处于 D0 状态(即完全打开)。如果在帧缓存器处于 D3 状态时,其驱动程序收到一个请求,要求打开监视器电源使监视器处于 On 状态,则在将监视器设置为 On 之前,驱动程序必须调用 pm_raise_power(9F) 才能启动帧缓存器。如果系统在监视器处于 On 状态时请求降低帧缓存器的电能供给,则驱动程序必须拒绝该请求。