Android 기술 Q&A 
Q&A 게시판에 질문을 남기신 글에 대한 답변/덧글/쪽글에 대한 Push 메일 서비스를 받고자 하시는 분들은
☞ Push 메일 서비스 공지를 필독하시기 바랍니다.
우선순위 문제.
작성자
작성일 2008-10-28 (화) 17:16
ㆍ추천: 0  ㆍ조회: 11113      
IP: 210.xxx.89
안녕하십니까? 안드로이드 플랫폼에 대해 공부하고 있습니다.
 
안드로이드 플랫폼을 보면서, 잘 이해가 안가는 점이 있어 이렇게 질문을 올려 봅니다.
 
지금 안드로이드 Q&A 50에 보면,
 
유저가 priority를 정할 수 있냐는 질물에 모르겠다고 답변되어 있더군요.
 
그래서 여쭈어 봅니다.
 
만약, 제가 mp3나 기타 app를 사용하고 있는 중, 전화가 온다면, notification에 의해서
 
알수가 있겠지요. 그럼 app는 stop을 하고 전화를 받아야할 텐데..
 
이러한 점을 모두 app제작할 때, app 내에 이러한 sequence에 대해서 매번 넣어주어여하는 건가요?
 
아니면, 다른 관리하는 주체가 있는건가요?
 
그리고, 애플리케이션간 우선 순위는 없는 건가요?
 
process의 우선순위를 누가 정해야 하는지요...
 
질문이 좀 장황합니다. 죄송합니다.
이름아이콘 invain
2008-10-28 21:32
`` 님이 선택한 글 입니다.
API개발자의 스케쥴링 함수의 사용은 Process Priority 으로 부여되면서  Linux OS 에 의해 -19 ~ 20 (40 Priority)범위의 Normal Priority(=Dynamic Priority)에 의해 우선순위 스케쥴링이 작동되도록 설계되어 있습니다. 위에 들품님이 설명하신대로 달빅 API 개발자에 의해 1차적으로 Priority의 Determinism이 결정되고, 그 다음으로  애플리케이션 프레임웍 레벨에 속하는 Acitivity의 라이프사이클에 의해  OS에게 해당 상태를 전달하면  Linux OS는  Low Memory Killer 정책을 이용하여 실행중인 프로세스의 생명주기를 관리하는 구조로 이루어집니다.

즉 거두절미하고 답변을 정리하자면
자바 API함수중에서 스케쥴링 함수들을 이용하는 개발자에 의해 우선순위 정책이 결정된다고
보시면 됩니다.  

OS레벨에서는 즉 안드로이드 리눅스 커널이 Non Preemption Kernel으로 동작되므로
비선점형 커널 체계로 Normal Priroity ( Nice value by User)을 통해 우선순위 정책이 관리됩니다.


p.s: 말씀하신 문제현상들에 대해 좀더  효과적으로 시스템을 보완하기 위해 누군가(?) 새로운 피쳐를 만들고 있다는 얘기가 있습니다. ㅎㅎ
   
이름아이콘 들풀
2008-10-28 17:46
`` 님이 선택한 글 입니다.
결론적으로 process 우선순위는 애플리케이션을 제작하는 개발자가 어떤 app.를 제작하느냐에
의해 일차적으로 결정나며, 두번째는 사용자에 의한 폰 사용과정에 의해 이차적으로 결정난다고
보시면 될 듯합니다.

이곳에 필요한 지식은, process priority, activity lifecycle, activity & activity manager,
kernel low memory killer 등의 기초지식이 요구될것으로 보입니다.
   
이름아이콘 들풀
2008-10-28 17:41
먼저 이것을 참고하시구여..

http://www.kandroid.org/board/board.php?board=AndroidBeginner&page=4&command=body&no=22
   
이름아이콘 들풀
2008-10-28 17:43
그 다음은 이것을 참고하시구..~

http://www.kandroid.org/board/board.php?board=AndroidBeginner&page=3&command=body&no=36
   
이름아이콘 불타는주작
2008-10-29 07:57
들풀님/invain님 두분 모두 너무 너무 감사합니다. 열심히 하도록 하겠습니다.
   
이름아이콘 들풀
2008-10-29 09:00
도움이 되셨다면...감사..~
   
이름아이콘 회색
2008-10-31 16:45
위에서 두 분이 말씀하신
- Activity Life Cycle에서 사용되는 것은 프로세스의 메모리관리 처리를 위한 Process Priority
- Linux Process Priority는 CPU 점유를 위한 Process Priority.
머 그외에
- Intent filter Priority라는 것도 있는데 똑같은 Intent를 누가 처리하냐를 결정하는 Intent Priority

그런데 위에 프라이어러티 다 신경쓰실 것 없이 불타는 주작님이 궁금해하시는 App 중에 전화가 왔을때 어떻게 처리되느냐? App에서 신경쓸 것 없이 Incoming Call을 처리하는 Intent가 발송되어 전화 받기 Activity가 뜹니다. 머 그냥 어플리케이션은 전화가 오는 경우, 정지버튼을 누른 경우등 다양한 경우에 의해 Stop될 수 있으니, 그럴 경우만 잘 처리해놓으면 됩니다. (라이프사이클의 onPause, onStop 부분)
   
 
덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.
    N     분류     제목    글쓴이 작성일 조회
4853 화면에 텍스트, 이미지, 버튼 출력 관련 질문입니다... 2008-10-24 12183
4852 Re..소스파일 첨부 2008-10-24 8388
4851 [문의] ARM926EJS(Target)에 Android 올리기. 2008-10-24 10858
4850 android 1.0r SDK to read HW 포팅 질문 2008-10-24 8315
4849 [ZIP3] 처리되지 않은 win32 예외... 2008-10-27 11611
4848 Webbrowser 접근시 hidden되어 있는 안드로이드 소스파일을 어.. 2008-10-27 9698
4847 repo init 시 멈춤 2008-10-27 11699
4846 msm과 goldfish 빌드시 구분. 2008-10-27 9163
4845 에뮬레이터 이미지 추출 2008-10-28 8906
4844 mapview관련질문입니다. 2008-10-28 8486
4843 우선순위 문제. 2008-10-28 11113
4842 Dalvik VM 관련 문의드립니다. 2008-10-28 9613
4841 SDK 1.0 PORTING to HW 질문 2008-10-28 8434
4840 G1 USIM Unlock 문의 드립니다. 2008-10-29 8786
4839 map apikey관련해서 질문드립니다. 2008-10-29 8506
4838 M4300(사사미)에 포팅가능여부문의 2008-10-30 9427
4837 막히는 부분이 있어서 질문 드립니다. 2008-10-30 11105
4836 안드로이드 개발에 어떤 것들을 봐야 할까요??.. 2008-10-30 8209
4835 Parcel 클래스의 용도가 뭔가요?? 2008-10-31 9540
4834 그렇다면 Looper 클래스의 용도는 무엇인가요? 2008-10-31 8287
4833 리소스중 drawable를 xml로 정의 하는데 관련하여 참고할 문서.. 2008-10-31 8474
4832 현재 안드로이드는 어플을 만들면 어디서 배포 할수 있나요?.. 2008-10-31 8173
4831 포팅에러 질문드립니다.. 2008-10-31 10655
4830 안드로이드 단말기를 구하는 방법이 있을까요?.. 2008-10-31 8488
4829 App에 있는 VideoPlayer 에 관해서 입니다. 2008-11-01 8349
4828 MapView 질문입니다. 2008-11-02 8789
4827 LCD size 제약? 2008-11-02 9014
4826 도와주세요.ㅠ 2008-11-02 10998
4825 안녕하세요 질문이있습니다. 2008-11-03 8396
4824 Source Code 폴더 구조? 2008-11-03 9895
4823 T-Mobile USIM 가지고 계신 분 G1 USIM Unlock 부탁드립니다... 2008-11-03 8452
4822 windowsOS에서 MD5 fingerprint 획득 방법... 2008-11-03 8291
4821 에뮬레이터에서의 카메라 구동 관련 2008-11-03 10061
4820 Tslib 연결방법 문의 2008-11-03 11092
4819 ㅠㅠ 다시 Mapview 문의합니다..ㅠㅠ 2008-11-03 12520
4818 소스 에러좀 봐주세요. 2008-11-03 17200
4817 Re..에러요.ㅠㅠ 2008-11-03 8366
4816 XML과 setContentView 외에 View를 표시하는 방법이 있나요?.. 2008-11-03 11017
4815 T-Mobile G1을 USIM Unlock 하면 usb 디버깅 되나요? 2008-11-04 8495
4814 172번 포팅에러 재 질문 드립니다 2008-11-06 9241
4813 ubutu에서 eclipse 구동 오류 2008-11-06 8404
4812 Re..172번 포팅에러 재 질문 드립니다 2008-11-06 8664
4811 초보자가 질문하나만 드려요. 2008-11-07 14125
4810 프로그램 Signing 했습니다. 2008-11-07 9368
4809 텍스트색이요.ㅠ 2008-11-07 8400
4808 G1 어떻게 구입할 수 있을까요? 2008-11-09 8109
4807 안드로이드 플랫폼 질문 2008-11-09 10394
4806 간단한 질문드립니다~xml을 이용한 UI구성이후에요~.. 2008-11-09 8388
4805 안드로이드 초보 질문이에요~ 2008-11-10 8232
4804 Kernel Panic 문제. 2008-11-10 10678
12345678910,,,101