surfaceflinger in its own process 이유?

1. 이슈
- SurfaceFlinger 서비스가 이전에는 system_server 프로세스 안에서 수행되었는데
언제부터인가 독립적인 프로세스로 나왔다.
- 왜?, 언제?

2. 분석
- init.rc에 보면 독립적인 프로세스로 실행하는 부분이 있다.
- 해당 부분의 git 로그를 살펴보자
- [android-jb/system/core]# git blame rootdir/init.rc | vi -
310 a40481b2 (Mathias Agopian  2011-03-03 18:48:30 -0800 310)     setprop system_init.startsurfaceflinger 0
...
397 a40481b2 (Mathias Agopian  2011-03-03 18:48:30 -0800 397) service surfaceflinger /system/bin/surfaceflinger
398 a40481b2 (Mathias Agopian  2011-03-03 18:48:30 -0800 398)     class main
399 a40481b2 (Mathias Agopian  2011-03-03 18:48:30 -0800 399)     user system
400 a40481b2 (Mathias Agopian  2011-03-03 18:48:30 -0800 400)     group graphics
401 a40481b2 (Mathias Agopian  2011-03-03 18:48:30 -0800 401)     onrestart restart zygote

- git log로 해당 commit의 로그 조사
- [android-jb/system/core]# git log | vi -
- "a40481b2 " 로 필터링
13790 commit a40481b2cc604b8b278d509f120cf496c4c318f2
13791 Author: Mathias Agopian <mathias@google.com>
13792 Date:   Thu Mar 3 18:48:30 2011 -0800
13793 
13794     Run surfaceflinger in its own process. [DO NOT MERGE]
13795 
13796     This is to allow OpenGL ES rendering from the system process,
13797     and help with debugging.
13798 
13799     Bug: 4086003
13800     Change-Id: I732e95f4fcaa358f430cc195d8e63a69263bffdc
3. 결론
- When: 2011년 3월 3일
-  Who: Mathias Agopian <mathias@google.com>
- Why?: This is to allow OpenGL ES rendering from the system process and help with debugging 


댓글

이 블로그의 인기 게시물

SSH 연결 Delay 해결

[ELK] search guard를 이용한 보안 설정 (사용자 권한)

공공데이터(openapi) 사용법 (특정 정류소, 버스의 남은 좌석 확인 하기)