안드로이드 가상 머신(Virtual Machine)은 안드로이드 애플리케이션을 실행하기 위한 가상 환경입니다. 안드로이드 가상 머신은 안드로이드 운영체제와 애플리케이션을 호스팅하고, 이를 다양한 디바이스에서 실행할 수 있도록 합니다.
- Dalvik Virtual Machine은 Android 4.4 KitKat 이전 버전까지 사용되었습니다.
- DVM은 안드로이드 애플리케이션을 실행하기 위해 최적화된 가상 머신입니다.
- DVM은 Dex 파일(Dalvik Executable) 형식의 바이트코드를 실행합니다.
- Dex 파일은 Java 바이트코드(.class 파일)를 변환한 형식으로, 메모리 사용과 - 실행 성능을 최적화하기 위해 개발되었습니다.
- Android 4.4 KitKat 이후 버전부터는 Dalvik Virtual Machine 대신 Android Runtime이 사용되었습니다.
- ART는 AOT(Ahead-of-Time) 컴파일을 사용하여 애플리케이션을 실행합니다.
애플리케이션을 설치할 때 Dex 파일을 네이티브 기계 코드로 변환하고, 실행 시에는 이 네이티브 코드를 실행합니다.- AOT 컴파일은 애플리케이션 실행 속도를 향상시키고, 메모리 사용을 최적화하여 전반적인 성능 향상을 도모합니다.
- Android Virtual Machine은 안드로이드 애플리케이션을 다양한 디바이스에서 실행할 수 있는 이점을 제공합니다. 또한 안드로이드 운영체제와 애플리케이션 사이에서 중개자 역할을 수행하여 애플리케이션 실행 및 관리를 용이하게 합니다.