Đây là lý do vì sao iOS đỡ ngốn RAM hơn Android

Cuộc chiến giữa iOS và Android cho tới hôm nay vẫn ở thế tám lạng nửa cân. Rõ ràng là có những lý do nhất định khiến bạn chọn bên này hoặc bên kia, nhưng điều đó cũng không ngăn được chúng ta tiếp tục so sánh.

Có một điều này có thể bạn không để ý, điện thoại iOS thường ít ngốn RAM hơn các máy Android tới một nửa hoặc hơn. Nhưng vì sao lại như vậy? Bài viết hôm nay sẽ cho bạn câu trả lời.

So sánh RAM của iPhone và Android

Hãy cùng so sánh một số máy Android cao cấp từ nhiều hãng gồm OnePlus 5T, Galaxy Note 8, S8+ và Google Pixel 2XL với iPhone 8, 8 Plus và iPhone X.

OnePlus 5T
Samsung Galaxy Note 8
Samsung Galaxy S8 Plus
Google Pixel 2 XL
Điện thoại phân khúc cao của Android đều dùng 6 tới 8 GB

Đây là 4 chiếc điện thoại hàng đầu năm 2017 trong thế giới Android, thông số RAM rất cao và nếu muốn nâng cấp thì cũng tốn không ít tiền (từ $650 tới $1000). Hầu hết Chromebook cũng chỉ 4GB mà thôi, chỉ một số ít có bản 8GB và ngay cả các bản này cũng rẻ hơn điện thoại Android.

Dù chỉ có OnePlus 5T có RAM 8GB nhưng hẳn là phải có lý do mà Android nói chung mới cần nhiều RAM như vậy. Nếu so sánh với iPhone thì sao?

iPhone 8
iPhone X
iPhone 8 Plus
Trong khi đó iPhone chỉ cần khoảng 1 nửa số RAM của Android

Chắc bạn cũng thấy rồi. iPhone của năm 2017 ”lẹt đẹt” nhất là iPhone 8 chỉ có RAM 2GB, iPhone 8 Plus thì 3GB và đến cả iPhone X mới nhất, xịn nhất cũng chỉ là 3GB.

Nhìn về trước một chút, điều này cũng không có gì bất ngờ. iPhone 7 Plus của năm 2016 cũng chỉ có 3GB. iPhone 7, 6S Plus và 6S chạy 2GB không vấn đề gì, iPhone 6 vẫn chạy được iOS 11 và chỉ có RAM 1GB.

Vì sao iPhone 6 của năm 2014 lại có thể chạy bản iOS mới nhất chỉ với RAM 1GB còn máy Android lại cần RAM nhiều tới 8 lần?

Vì sao điện thoại Android lại cần nhiều RAM đến thế?

Ngay từ đầu, Android đã được thiết kế để hỗ trợ nhiều loại vi xử lý, nhiều nhà sản xuất và nhiều cách tinh chỉnh linh kiện khác nhau. Thông thường, phần mềm viết cho một hệ thống nhất định không thể chạy trên hệ thống khác mà phải chuyển sang (port), thường là viết lại các bit không tương thích.

Ứng dụng Android thường chạy trên Java. Java thuận tiện bởi bạn chỉ cần viết ứng dụng một lần trên Java sau đó máy ảo sẽ “dịch” code đó trên môi trường runtime để chạy trên các hệ thống khác.

Nhưng việc này cũng có cái giá của nó.

Máy ảo Java rất phức tạp và tốn RAM, không chỉ quản lý quy trình trên máy ảo mà còn giữ code Java gốc của ứng dụng và code sau khi dịch để chạy trên hệ thống.

Một mặt, máy ảo trên Android cũng được cải tiến trong nhiều năm qua và không cần nhiều RAM như trước. Nhưng mặt khác, ứng dụng Android cũng ngày càng phức tạp hơn và cần nhiều RAM hơn. RAM cũng cần cho các quy trình chạy nền rất phổ biến trên các ứng dụng Android.

Android ngốn nhiều RAM hơn iOS nên cần nhiều RAM hơn
Android ngốn nhiều RAM hơn iOS nên cần nhiều RAM hơn

Cuối cùng là Android được xây dựng trên 1 phương pháp gọi là “thu gom rác”. Ứng dụng Android được khuyến khích dùng nhiều RAM nhất có thể. Sau đó Android sẽ dọn một thể trên RAM tất cả các dữ liệu không còn dùng nữa (rác) để các ứng dụng khác sử dụng. Cách này sẽ hiệu quả khi máy có nhiều RAM, nếu không hệ thống sẽ mất rất nhiều thời gian dọn rác.

Vì vậy nếu bạn dùng Android thì nên là 4GB RAM để có tốc độ tốt. Nếu không thì ít nhất cũng là 2GB..

Tại sao iOS không ngốn RAM như Android?

Apple kiểm soát hệ sinh thái iOS của mình chặt hơn nhiều. Nếu dùng iOS, bạn chỉ có một lựa chọn là iPhone mà thôi. Nếu muốn tạo ứng dụng iOS thì phải dùng công cụ của Apple và chơi theo luật của Apple.

Việc này có cái lợi riêng của nó.

Apple biết chính xác thông số của từng thiết bị chạy OS của mình nên từ đó có thể đưa ra quyết định thiết kế. Ví dụ như Android cần hỗ trợ nhiều vi xử lý thì iOS lại chỉ chạy ARM.

Vì thế, iOS không cần máy ảo để dịch ngay và luôn như Android. Tất cả ứng dụng đều biên dịch bằng code nguyên gốc, thực thi ngay trên phần cứng. Không cần máy ảo thì cũng có nghĩa là đỡ cần nhiều RAM.

iOS cũng óc cách quản lý bộ nhớ khác. Trong khi chính OS Android quản lý bộ nhớ thì trên iOS, việc này là của các ứng dụng. Thay vì cho phép ứng dụng chiếm nhiều RAM và giải phóng khi không dùng nữa, ứng dụng iOS tự động phân bổ bộ nhớ khi cần.

iPhone có ít RAM hơn không có nghĩa là sẽ chạy chậm hơn. Vậy nên nhiều khi nhìn vào các thông số kỹ thuật không thôi cũng chưa đủ nói lên điều gì.

Xem thêm:

Thứ Năm, 01/02/2018 15:02
51 👨 1.212