반응형
Android 롤리팝부터 Dalvik VM이 ART로 대체되었다. 가장 큰 주요 차이점은 컴파일러로 보인다.
Dalvik VM: JIT (Just -in-Time)
ART: AOT (Ahead-of-Time
JIT (Just-in-Time)
바이트 코드를 실제 기계어로 컴파일하는 것을 실행 시점에 수행하게 된다. 따라서 실행 속도가 상대적으로 느리지만, 앱 설치 속도, 설치 용량 등이 AOT에 비해 빠르고 적게 차지한다.
AOT (Ahead-of-Time)
이름에서 알 수 있듯이 미리 컴파일을 다 해놓는다. 따라서 실제 실행 시 별도 컴파일 과정이 없으므로 속도가 상대적으로 빠르다. 반면 미리 컴파일을 해놓기 때문에 설치 속도나 설치 용량이 좀더 큰편이다.
롤리팝부터 ART로 대체되긴 했지만, 누가부터 JIT도 같이 탑재하여 JIT과 AOT의 두 장점을 계승한 것으로 보인다. 즉 설치 시에는 JIT처럼 설치하여 빠른 설치 속도, 적은 용량을 차지하며, 앱이 동작하지 않거나 충전 중일 때 미리 AOT 방식으로 컴파일을 해놓아 빠른 실행 속도를 제공해준다.
반응형
'개발 > Android' 카테고리의 다른 글
Android에서 현재 함수가 어떤 스레드에서 돌고 있는지 확인하는 방법 (0) | 2020.11.08 |
---|---|
Android에서 Context는 대체 무엇인가? (0) | 2020.11.08 |
[Android] 앱 프로세스와 안드로이드 프레임워크와의 관계 (0) | 2020.11.08 |
[Android] Context에 의한 Memory Leak (0) | 2020.11.08 |
[Android] 이미지 파일 사이즈 얼마나 알고 계신가요? (0) | 2020.11.08 |