2010-11-30 3 views
0

안드로이드에서 휴대 전화가 절전 모드/일시 중지 모드로 들어가는 것을 알 수있는 메커니즘은 무엇입니까?Android 서스펜드 모드

전화가 일시 중단 모드로 전환 될 때 init 프로세스 (모든 데몬의 부모)가 kill 신호를 보냅니 까?

답변

0

이 기능은 웨이크 잠금 장치를 통해 제어됩니다. CPU를 절전 모드로 설정할시기를 결정하는 것이 없습니다. 앱이 잠자기 상태가되지 않도록 잠자기를 해제합니다. Wake Lock이 유지되지 않으면 CPU는 잠자기 모드로 전환되고 외부 이벤트 (버튼 누름, 네트워크 작동, 알람)가 깨어날 때까지 절전 모드로 복귀하지 않습니다.

+0

사실 제 질문은 조금 다릅니다. 휴대 전화가 일시 중지 모드 (예 : request_suspend_state)로 전환하기로 결정하면 데몬은 이제이 상태로 전환하여 ioctl을 통해 드라이버에 데이터를 전송하기 시작합니다. 그러나 데몬은 사용자 공간의 일부이며 표준 리눅스 구현에 따라 사용자 공간 프로그램은 일시 중지/시작 시간 동안 아무런 조치도 취하지 않아야합니다. – tantuni

+0

그럼에도 질문은 여전히 ​​열려 있습니다. 전화가 중단된다는 것을 데몬에게 알려주는 것은 무엇입니까? 불행히도 데몬은 모두 가까운 소스입니다. 그래서 프로그램 흐름을 확인할 수 없습니다. – tantuni

관련 문제