본문 바로가기
[android] Binder 와 Death Recipients 에 대한 이해 [android] Binder 와 Death Recipients 에 대한 이해 안드로이드는 기본적으로 multi-task 를 위해 만들어진 앱이다. 그래서 초창기에는 user 가 명시적으로 process 를 죽이지 못하도록 만들고, main activity 를 종료했을 때는 아주 낮은 priority 로 계속 process 를 살려둔다. 왜 그렇게 하냐? app switching 이 일어날 때 process 를 처음부터 만들려고 하면 너무 많은 시간이 들기 때문이다. 그럼 process 들을 유지함으로서 메모리가 부족하면 어떻게 하냐? 해당 process 를 최소한의 정보를 보존한 후 죽인다. 그리고 해당 process 가 다시 launch 되면 최소한의 정보를 통해 어느 정도 선까지는 상태복구를 해준다.. 2015. 12. 29.
[android] Thread Scheduling 에 대한 이야기 [android] Thread Scheduling 에 대한 이야기 -Thread 에는 priority 값을 주어 CPU 사용량을 조절할 수 있다. ( Process#setThreadPriority( int ), Thread#setPriority( int ) ) 이 Priority 에 들어가는 값은 Nice value 라 부르는데, 다른 Thread 에 대해 얼마나 Nice 한가를 나타내는 값이다. Nice 값이 높다는 것은 다른 Thread 에게 많이 양보하는 착한(?)놈이라는 의미. 즉 Nice 값이 높을수록 우선순위가 낮아 CPU 활용이 적어진다. - Android 에서는 Main ( UI ) Thread 가 우선순위가 보통 가장 높아야 한다. BG 에서 도는 Thread 들의 Nice Value 가.. 2015. 12. 22.
[android] Useful ADB commands [android] Useful ADB commands # Start an activity adb shell am start / # Power Button adb shell input keyevent 26 # Menu Button adb shell input keyevent 82 # Print all installed packages adb shell pm list packages [-f] // -f 옵션이 있으면 apk 위치까지 함께 표시된다. # Logcat filter by tagname adb logcat -s TAG_NAME_1 TAG_NAME_2 # Logcat filter by priority adb logcat "*:E" # Logcat filter by tagname and priority.. 2015. 12. 12.
[linux] top 에 대한 많은 이야기. linux, Top 에 대한 많은 이야기. 참고 사이트 : http://bluelimn.tistory.com/740 실행 명령어 $ top [옵션] Top 의 출력 내용 분석 -top - 11:17:50 up 33 days, 18:22, 7 users, load average: 0.47, 0.72, 1.78 현재시간 / uptime / 로그인 유저수 / 로드 에버리지 로드 에버리지란? -Tasks: 190 total, 2 running, 185 sleeping, 2 stopped, 1 zombie 전체 프로세스 수 / 현재 실행중 프로세스 수 / 유휴 프로세스 수 / 정지상태 프로세스 / 좀비 프로세스 -Cpu(s): 0.3%us, 0.6%sy, 0.0%ni, 97.9%id, 0.0%wa, 0.5%hi,.. 2014. 3. 17.
반응형