[問題] suspend機制

作者: likecyndi   2014-02-27 11:44:19
對於ubuntu以及android而言,在power management這部分
都是base on linux的架構
但是android在這部分加了 1.early_suspend 2.late_resume 3.wake_lock的機制
就目前的認知
系統想要進入suspend的時候,都是看kernel有support那些狀態
觀察 /sys/power/state底下可得知
所以要進入suspend的時候,只要執行以下command,即可進入
echo 'mem' > /sys/power/state (android)
echo 'standby' > /sys/power/state (pc)
問題有2個
1.在resume回來的時候,android必須改變/sys/power/state的狀態,防止再次進入休眠
那pc有實作這部分嗎?? 如果有的話 是在哪邊執行這部分,因為沒找到相關事件
2.在沒有任何wakelock的情況下,android 執行echo 'mem' > /sys/power/state 之後
必須等待kernel凍結userspace的行程,userspace才會停下來,所以會再執行個1~2秒
但是以pc來講,我只要執行echo 'standby' > /sys/power/state,userspace就馬上停
止,不知道差異點為何??
作者: likecyndi   2014-03-10 09:30:00
自問自答一下 問題1:pc並不需要改變這個狀態,應該是因為android修改到linux kernel的緣故問題二:是因為early_suspend造成這個影響

Links booklink

Contact Us: admin [ a t ] ucptt.com