Android 17 thay đổi cách hệ điều hành xử lý những ứng dụng tiêu thụ lượng bộ nhớ bất thường. Google áp dụng giới hạn bộ nhớ theo từng ứng dụng, trước tiên trên Pixel, nhằm ngăn một tiến trình chiếm quá nhiều RAM và làm chậm toàn bộ điện thoại. Khi vượt ngân sách, ứng dụng có thể bị giảm hiệu năng, chuyển một phần dữ liệu sang bộ nhớ nén và nếu mức sử dụng tiếp tục tăng, Android có thể chấm dứt tiến trình.
Android 17 đặt ngân sách bộ nhớ cho từng ứng dụng
Google áp dụng phản ứng theo từng bước thay vì đóng ứng dụng ngay khi chạm ngưỡng. Mục tiêu là bảo vệ độ phản hồi của toàn thiết bị nhưng vẫn cho ứng dụng cơ hội giảm mức sử dụng trước khi hệ thống dùng biện pháp mạnh nhất. Game, công cụ media và ứng dụng phức tạp giữ nhiều dữ liệu trong bộ nhớ sẽ chịu tác động rõ hơn.
Điều gì xảy ra khi ứng dụng vượt giới hạn RAM
Khi đạt giới hạn, Android có thể buộc một số trang bộ nhớ sang zRAM, vùng RAM được nén. Cách này giảm áp lực lên RAM vật lý nhưng việc nén và giải nén dùng CPU, vì vậy người dùng có thể thấy giật, khựng hoặc chậm trước cả khi ứng dụng bị đóng.
– Giai đoạn một — zRAM swapping: Android nén các trang bộ nhớ và chuyển sang zRAM để giảm áp lực RAM vật lý, nhưng tải CPU bổ sung có thể gây chậm.
– Giai đoạn hai — chấm dứt tiến trình: nếu mức dùng tiếp tục vượt ngưỡng zRAM, Android có thể đóng ứng dụng. ApplicationExitInfo có thể hiển thị mô tả “MemoryLimiter:AnonSwap”.
Vì sao Google siết bộ nhớ vào lúc này
Google cho biết giá bộ nhớ tăng là một phần nguyên nhân. Một số thiết bị mới giữ nguyên hoặc thậm chí giảm RAM vật lý trong khi người dùng vẫn kỳ vọng ứng dụng nhanh và mượt. Android vì thế cần ngăn một tiến trình tối ưu kém làm giảm hiệu năng của toàn bộ thiết bị.
Chính sách không chỉ dành cho Pixel. Trong năm tới, nhiều nhà sản xuất hơn sẽ áp dụng giới hạn theo ứng dụng trên thiết bị từ 4GB đến 16GB RAM trở lên, vì vậy developer không thể coi đây là hành vi riêng của Pixel.
Developer và người dùng Android cần chờ đợi điều gì
Google khuyến nghị developer theo dõi bộ nhớ chủ động. Android vitals cung cấp số liệu Memory Usage và Bitmap Memory; Firebase Crashlytics 20.1.0 bổ sung dữ liệu cho OOM và Memory Limiter; ProfilingManager có thể thu thập heap dump và profile từ thiết bị thực để tìm memory leak và cấp phát quá mức.
Với người dùng, ứng dụng chạy nền sẽ khó chiếm RAM đến mức làm chậm toàn bộ điện thoại. Đổi lại, ứng dụng tối ưu kém hoặc dùng bộ nhớ cực lớn có thể giật, tải lại hoặc bị đóng thường xuyên hơn. Giới hạn bắt đầu trên Pixel chạy Android 17 và dự kiến mở rộng sang các hãng khác trong những tháng tới.







