Trong suốt lịch sử hình thành, phát triển nhanh chóng và đầy biến động kéo dài 5 năm, so với phiên bản hệ điều hành đầu tiên, gần như mọi khía cạnh hay tính năng chính của Android 4.4đã được thay đổi. Mỗi lần Google phát hành một phiên bản Android mới, đó đều là những bản cập nhật hoặc nâng cấp khá toàn diện, tất cả mọi thứ nhưng ngoại trừ phần quan trọng nhất: Dalvik. Theo đó, máy ảo có nhiệm vụ chạy hầu hết các ứng dụng Android này vẫn được giữ nguyên như kể từ ngày đầu tiên. Và đến thời điểm này, Dalvik đã bộc lộ những dấu hiệu của tuổi tác, sự chậm chạp là có thể thấy được. Để theo kịp và đáp ứng các nhu cầu sử dụng ở mức cao hơn của người dùng, Google đã quyết định sử dụng ART (viết tắt của Android Runtime) trên phiên bản hệ điều hành Android 4.4 KitKat nhằm thay thế cho Dalvik. Phiên bản ART đầu tiên tích hợp cùng Android 4.4 có thể tăng tốc ứng dụng thêm 100%, còn phiên bản hoàn thiện thậm chí sẽ tốt hơn nữa.
Khi bạn chạy phần mềm trên thiết bị điện tử, chẳng hạn như PC hoặc smartphone, gần như cỗ máy của bạn sẽ luôn phải chạy trình biên dịch “compiled code”. Trình biên dịch sẽ có nhiệm vụ chuyển dịch mã nguồn viết trong một ngôn ngữ cấp cao thành mã đối tượng hay ngôn ngữ máy mà có thể được thi hành trực tiếp bởi một máy tính hay bởi một máy ảo. Chẳng hạn, nếu bạn mở một tập tin EXE, bạn sẽ thấy trình biên dịch “gobbledegook” giúp CPU có thể thực hiện chu trình nạp khởi chạy ứng dụng. Windows, trình duyệt web, Crysis 3, Linux, ứng dụng iOS đều là những ví dụ có sử dụng các trình biên dịch .
Tiếp đó, chúng ta còn một loại mã khác gọi là trình thông dịch “interpreted code” với nhiều loại khác nhau, nhưng có một điểm chung là chúng không thể thực hiện nạp trực tiếp bởi CPU. Trước tiên, trình thông dịch phải được giải mã thành mã máy nhờ một quá trình gọi là hệ phiên dịch JIT (Just-in-time). Ví dụ phổ biến nhất của trình thông dịch là JavaScript, theo đó, trình duyệt web sẽ biên dịch /thông dịch các đoạn mã khi người dùng ghé thăm một trang web có sử dụng JavaScript .
Ngoài ra, một ví dụ điển hình khác của trình thông dịch là Java và Dalvik thực chất là "phiên bản Google" của Java. Với Java, các nhà phát triển có thể viết ứng dụng một lần duy nhất, sau đó chuyển nó sang ngôn ngữ của các nền tảng phần cứng khác nhờ một “thông dịch viên” có tên Java Virtual Machine. Giải thích khá nhiều nhưng chúng ta có thể rút gọn chung lại điểm mấu chốt là Google đã quyết định sử dụng máy ảo Dalvik cho các ứng dụng Android. Bằng cách này, một nhà phát triển có thể viết một ứng dụng Dalvik duy nhất và được đảm bảo rằng nó sẽ chạy trên smartphone, tablet, TV hay các thiết bị khác.
Nhưng hiện nay, một điểm bất cập của trình thông dịch “interpreted code” là nó thực sự chậm. Ví dụ như JavaScript có thể chậm hơn tới 20 lần so với mã tương tự được biên dịch với C hoặc C++ . Java / Dalvik không phải là quá chậm, nhưng không thể so sánh với tốc độ của trình biên dịch nguyên bản. Trong nhiều trường hợp, đặc biệt là với các bộ vi xử lý 4 nhân cao cấp, khác biệt về tốc độ này là rất rõ ràng. Chúng ta không thể đổ lỗi hoàn toàn cho Dalvik là nguyên nhân làm các thiết bị Android bị lag hoặc tốn pin, nhưng chắc chắn đây là một tác nhân quan trọng gây ra điều này. Về cơ bản, trình thông dịch trên Dalvik mất nhiều thời gian để giải mã và làm CPU phải tính toán nhiều hơn, do đó nó trực tiếp làm giảm thời lượng pin cũng như độ mượt mà tổng thể của thiết bị di động.
Android Runtime – ART
Chưa có bình luận. Hãy là người đầu tiên bình luận bài viết này.