Android dalvik VM ART(Android Runtime)

2015.08.05 21:49

졸리운_곰 조회 수:343

 

ART(Android Runtime)

jvm

                                                                   (JVM)

 - 자바코드 -> 바이트 코드(.class) -------> native

 - 스택머신

 

dalvik( android 4.4.4 이하 버전)

                                                               (dex tool)                                         dexopt                                  (JIT)

 - 자바코드 -> 바이트코드(.class) --------> 바이트코드 (.dex) -------> .odex -> dalvik ---> native

 - 레지스터 머신 

 - JIT 컴파일

 

 

ART( android 4.4.4 이후 버전)

                                                               (dex tool)                                        dex2oat                   

 - 자바코드 -> 바이트코드(.class) --------> 바이트코드 (.dex) -------> elf  -> art -> native

 

 - dalvik 머신 대체

 - AOT(ahead-of-time) 컴파일

 - 디바이스에서 dex2oat를 사용해서 한번만 컴파일되고 elf 파일로 실행됨

     => 이렇게 함으로써 JIT 컴파일을 포함한 다양한 오버헤드를 제거하여 실행이 빠르다는 장점

          그러나 application이 설치 될 때 컴파일하기 때문에 설치 시간이 증가하고 어플의 크기가 증가함

 

 

ART_view.png

 

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

 

JIT vs AOT

JIT

 - application이 실행되는 동안 컴파일이 필수로 발생, 동적으로 컴파일, 실시간 컴파일 방식

 - 자주 실행되는 메소드들은 분석될 수 있고 최적화로 변형되어 더 나은 코드와 더 높은 성능을 만들어냄

 

 - 자주 실행되는 메소드를 규명하고 이러한 메소드를 컴파일하는데 시간이 걸리기 때문에 

     application은 성능이 피크데 도달하지 못하는 워밍업 기간을 가짐

 

AOT

 - 프로그램이 실행되기 전에 자바 메소드용 네이티브 코드를 생성하여 프로그램이 실행될때 한번 직접 사용될수 있도록 함.

 

 - 동적 클래스 로딩에서 클래스는 실행코드가 그 클래스를 참조하기 전까지는 로딩될 수 없음

 

 

추가 자료 정보 링크

http://www.ibm.com/developerworks/library/j-rtj2/

http://cafe384.daum.net/_c21_/bbs_search_read?grpid=dug7&fldid=2992&contentval=0001Izzzzzzzzzzzzzzzzzzzzzzzzz&nenc=&fenc=&q=FinePrint&nil_profile=cafetop&nil_menu=sch_updw

Posted by 발칙한사람

 

[출처] http://flslg.tistory.com/242

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED