Tôi biết hệ thống android bao gồm máy ảo Dalvik (DVM) Nhưng tôi không hiểu liệu hệ thống Android có bao gồm JVM cũng Hoặc DVM là một sự thay thế cho JVM? Cảm ơnHệ thống Android có bao gồm JVM không?
Trả lời
Nhưng tôi không hiểu nếu hệ thống android bao gồm JVM
số
Hoặc DVM là một sự thay thế cho JVM?
Máy ảo Dalvik là để thực thi các ứng dụng Android được biên dịch sang Dalvik bytecode. Máy ảo Java là để thực thi các ứng dụng Java được biên dịch sang bytecode Java. Cho dù bạn xem là một thay thế cho người khác là tùy thuộc vào bạn.
Chương Trình thường viết bằng Java và biên dịch để bytecode cho máy ảo Java, sau đó được dịch sang Dalvik bytecode và lưu trữ trong .dex (Dalvik thực thi) và .odex (Tối ưu hóa Dalvik Executable) tập tin.
Trong ngắn hạn, các chương trình được biên dịch thành bytecode JVM, sau đó được giải thích thành mã bytecode DVM. Thay vì chạy mã Java đã biên dịch, Dalvik biên dịch nó và sau đó dịch mã đó thành mã riêng của nó. Nó theo một cách nào đó là một sự thay thế cho JVM.
Môi trường thời gian chạy thay thế được gọi là Android Runtime (ART) được bao gồm trong Android 4.4 "KitKat" làm bản xem trước công nghệ. ART thay thế Dalvik hoàn toàn trong Android 5.0 "Lollipop".
ART, Thời gian chạy Android, được thay thế Dalvik trong Android 5.0. ART vẫn sử dụng cùng một tệp .dex
nhưng thay vào đó chúng được dịch thành các tệp .elf
(Tệp có thể thực thi và định dạng có thể liên kết). Đây là một thay thế khác cho JVM, khi mã Java được biên dịch thành mã bytecode JVM, sau đó được dịch sang mã byte bytecode DVM, sau đó được dịch thành một tệp ELF và được thi hành.
@ Chris Thompson thực hiện công việc tuyệt vời giải thích mã bytecode DVM trên Understanding disassembly of Dalvik code.
Nguồn: Wikipedia/bạn bè/Kinh nghiệm
- 1. làm mới hệ thống cdt eclipse bao gồm
- 2. CMake tạo Dự án CDT Eclipse không có hệ thống Bao gồm
- 3. Hệ thống Perl có thể gọi bao giờ chết không?
- 4. Cách tạo hình ảnh hệ thống Android
- 5. In từ Android mà không có hộp thoại hệ thống
- 6. Có phải Fragment.setUserVisibleHint() được gọi bởi Hệ thống Android không?
- 7. Làm thế nào để thiết lập hệ thống scons bao gồm đường dẫn
- 8. Tại sao Magento 1.4 bao gồm tệp javascript theo đường dẫn hệ thống tệp?
- 9. Gettext không có hệ thống tập tin
- 10. AIR - thiết lập kích thước của NativeWindow để bao gồm hệ thống chrome
- 11. Hệ thống hiện diện Firebase: không bao giờ ngừng viết
- 12. Tại sao các kiểu dữ liệu nguyên thủy hoạt động mà không bao gồm không gian tên Hệ thống?
- 13. Tôi có cần bao gồm @synthesize không?
- 14. Django Bao gồm - họ có xấu không?
- 15. MySQL có bao gồm MAMP không bao gồm tệp cấu hình không?
- 16. Tại sao một người nên sử dụng một hệ thống xây dựng trên hệ thống được bao gồm như là một phần của một IDE?
- 17. Hệ thống có các plugin trong C#
- 18. Android drawText bao gồm gói văn bản
- 19. Bao gồm jQuery, nếu không bao gồm đã
- 20. Có thể giả lập dịch vụ hệ thống trong Android
- 21. malloc trong hệ thống nhúng không có hệ điều hành
- 22. Tài nguyên hệ thống Android hữu ích
- 23. log4j2: Bao gồm PID
- 24. Cách nhận tùy chọn hệ thống Android?
- 25. Ghi nhật ký hệ thống tệp Android
- 26. Tệp nhật ký hệ thống Android
- 27. Các hằng số màu hệ thống Android
- 28. Cách lấy Màu Hệ thống Android
- 29. Android - Chỉ đọc Hệ thống tệp IOException
- 30. Android Cửa sổ lớp phủ hệ thống
Dalvik là thời gian chạy Java. –