안드로이드는 out-of-memory 상황이 되면 종료되어야 할 Process를 결정하게 된다.
이 때 사용되는 값이 oom_adj(Out Of Memory Adjustment)이다.
Process에 적용되는 oom ad 값은 아래와 같으며, 값이 클수록 리소스가 부족할 때 가장 먼저 종료가 된다.
-FOREGROUND_APP_ADJ 0 : 현재 실행되어 있고 User가 Control하고 보여지고 있는 Process
-VISIBLE_APP_ADJ 1 : 문자입력기 같이 단독으로 수행이 되지 않지만 보일 가능성이 있는 Process
-SECONDARY_SERVER_ADJ 2 : 현재 수행되어 지는 Wdiget 이나 Service
-HIDDEN_APP_MIN_ADJ 7 : Background App으로 종료하지 않고 빠져나온 App들이 해당
-CONTENT_PROVIDER_ADJ 14 : Content Provider
-EMPTY_APP_ADJ 15 : 캐시로 존재하는 App으로 퍼포먼스를 위해 Memory에 상주시켜놓은 App
* SYSTEM_ADJ -16 : 시스템을 위한 Process, 가장 작은 음수 값을 가지고 있는 것을 볼 수 있다.
● Property 값 셋팅 (/etc/init.rc)
● oom adj 확인
$cat /proc/[확인하고 싶은 프로세스 번호:PID]/oom-score
● oom adj변경
#echo [변경하고자 하는 값] > /proc/[변경하고 싶은 프로세스 번호:PID]/oom_adj
'SW개발' 카테고리의 다른 글
[QXDM] [로그 저장하고 불러오기] (2) | 2012.08.24 |
---|---|
[리눅스 쉘(Shell) 스크립트] (5) | 2012.08.17 |
[Linux와 Shell] (0) | 2012.08.14 |
[VI 글자 색상 바꾸기] (2) | 2012.08.13 |
[Android]서비스의 라이프 사이클 (0) | 2012.08.10 |
[Linux][VIM설정] (0) | 2012.07.31 |
[Linux][Screen] (1) | 2012.07.31 |
[Linux][alias 사용] (1) | 2012.07.31 |
[UML Diagram과 StarUML] (0) | 2012.07.31 |
[Android][APK구성 및 생성 절차] (0) | 2012.07.18 |