칸드로이드 저널- "Beyond Android" 
젤리빈(Android 4.1) : Project Butter, systrace and atrace
작성자
작성일 2012-07-19 (목) 05:32
ㆍ추천: 0  ㆍ조회: 13946      
IP: 125.xxx.222
 
젤리빈(Android 4.1) : Project Butter, systrace and atrace
 
안드로이드 4.1 Jelly Bean에서는 애플리케이션의 성능을 개선을 위한 최적화 도구로
systrace란 툴을 제공하고 있습니다. 2012 구글 IO의 Keynote에서도 언급되었던
Project Butter의 핵심적인 내용도 이와 관련된 것이었습니다.
systrace는 웹 브라우저를 통해 시각화할 수 있는 아래와 같은 그림의 결과물을 생성해 줍니다.
 
(참고로 리눅스 커널과 크롬의 trace 이벤트 분석을 위한 아래와 같은 도구도 있습니다.
 http://code.google.com/p/trace-viewer/ )
 
 
 
하지만, 문제는 이 도구를 사용하기 위해서는 젤리빈이 탑재된 실제 디바이스가
있어야 한다는 것입니다. (그리고 약간의 문제로 인해서, Windows 기반의 SDK에서는
systrace란 도구가 정상 작동하지 않고 있습니다.)
 
1. systrace를 젤리빈 SDK와 함께 배포된 에뮬레이터에서 사용할 수 없는 이유는,
   에뮬레이터가 현재 사용하고 있는 리눅스 커널 버전이 3.0 이하(즉, android-goldfish-2.6.29)라는데 있습니다.
   젤리빈 SDK의 systrace(정확하게는 systrace.py)는 안드로이드 플랫폼내의 atrace에 기반하며, 
   atrace란 툴은 다시 리눅스 커널 3.0의 trace feature에 기반하고 있기 때문입니다.
 
   systrace를 에뮬레이터에서 사용하기 위해 android-goldfish-2.6.29 커널을
   3.0 기반으로 업데이트할 수는 있겠지만,
   에뮬레이터에서 추출되는 trace 정보의 부정확성이 여전히 한계로 남을 듯 싶습니다.
 
2. 그래서 현재로써는 systrace를 사용해 보기 위해서는,
   1) 젤리빈이 탑재된 실제 디바이스
   2) Linux나 MacOS X기반의 SDK가 설치된 Host 머신이 있어야 합니다.
   3) Windows에서 정상작동하지 않지만, adb shell atrace를 통해
       직접 trace 정보를 dump해서 이 파일을 적절히 html로 변경할 수도 있을 듯 합니다.

3. 현재 국내에서 젤리빈이 탑재된 디바이스를 확보할 수 있는 방법은
   Galaxy Nexus를 젤리빈(안드로이드 4.1.1)으로 업데이트 하는 방법밖에는 없는 듯 합니다.
   절차는 아래와 같습니다.
 
   1) 디바이스를 구매한다.
   2) 디바이스 구매후 OTA로 system update를 하면 (4.0.2 에서 4.0.4로만 업데이트 됩니다.)
       - 이유는 국내에서 판매되는 Galaxy Nexus 에 대한 젤리빈 업데이트가 지원되지 않고 있기 때문입니다.
   3) 이 디바이스를 젤리빈으로 업데이트하기 위해서는 다음과 같이 하시면 됩니다.
      (아래의 절차는 국내에서 출시된 Galaxy Nexus의 플랫폼 이미지를
       미국에서 출시된 Galaxy Nexus 플랫폼 이미지로 변경하는 절차입니다.)
 
       3-1) 먼저 미국에서 출시된 Galaxy Nexus 플랫폼 이미지를 다운로드해서 압축을 풉니다.
              파일명 : yakju-imm76d-factory-c6e807a1.tgz (구글검색창에서 이 파일명으로 검색해 보세요.)
    
       3-2) 그런 다음 단말기에서 Power 버튼과 Volume-Up, Volume-Down 버튼을 동시에 누른후,
              디바이스와 호스트 머신을 usb 케이블로 연결합니다.
 
       3-3) fastboot devices 라고 실행했을 때, 디바이스가 보이면 정상적으로 연결된 것입니다.
             만약 연결이 잘 안되면 아래의 파일을 구해서 디바이스 드라이버를 설치해 보기 바랍니다.
             파일명 : Universal_Naked_Driver_0.7.zip (구글검색창에서 이 파일명으로 검색해 보세요.)
    
       3-4) fastboot flash bootloader bootloader-maguro-primela03.img
       3-5) fastboot reboot-bootloader
       3-6) fastboot flash radio radio-maguro-i9250xxla02.img
       3-7) fastboot reboot-bootloader
       3-8) fastboot -w update image-yakju-imm76d.zip
 
   4) 이 상태에서 system update를 하시면 젤리빈(4.1.1)로 정상적으로 업데이트가 됩니다.
       그리고, 업데이트 후에 APN 설정해 주세요.
       
         
 
    
이름아이콘 들풀
2012-07-19 05:37
참고로 systrace 를 사용하는 방법은 아래의 두개의 링크를 참조하세요.
http://www.adakoda.com/adakoda/2012/07/android-systrace.html
http://android-developers.blogspot.kr/2012/06/android-sdk-tools-revision-20.html
   
 
덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.