* Dalvik VM

> 자바 소스를 자바 바이트 코드로 컴파일한 후, 달빅 가상 머신 (DVM) 위에서 실행하는 달빅 실행파일 (DEX; Dalvik execute file) 로 변환

> 달빅은 안드로이드용으로 특수하게 만들어졌으며, 메모리, 프로세서, 전력이 제한된 환경에서 운영하기 위해 설계

> JVM 은 Stack-based Machine 인 반면에, DVM 은 Register-based Machine

- Stack-based Machine 은 데이터를 조작하기 전에 레지스터에 있는 데이터를 operand stack 으로 전송

- Register-based Machine 은 가상 레지스터를 사용해 직접 연산한다.

: 명령어의 상대적인 크기는 증가하지만, 실행해야 하는 명령어 개수는 줄어듦

: 달빅 창안자는 JVM 대비 평균 30% 더 효율적이라서 달빅을 지지한다고 한다

'SW > Android' 카테고리의 다른 글

Android DB (SQLite, Room)  (0) 2021.04.18
Cursor  (0) 2021.04.02
AsyncTask  (0) 2020.08.15
Zygote  (0) 2020.08.15
ANR (Application Not Responding)  (0) 2020.08.15

+ Recent posts