Quản lý tình trạng hao mòn flash

Bộ nhớ trong của Android Automotive sử dụng bộ nhớ flash có hàng nghìn chu kỳ xoá và ghi. Nếu bộ nhớ flash bị lỗi, hệ thống có thể không sử dụng được. Do phương tiện di chuyển có tuổi thọ cao (thường trên 10 năm), bộ nhớ flash phải cực kỳ đáng tin cậy. Trang này mô tả hoạt động của bộ nhớ flash và cách OEM có thể giảm thiểu nguy cơ lỗi thiết bị bộ nhớ flash.

Hiệu suất bộ nhớ Flash

Thiết bị bộ nhớ Flash sử dụng kỹ thuật cân bằng mài mòn để khắc phục các giới hạn xoá và ghi bằng cách sắp xếp dữ liệu và phân phối lượt ghi đồng đều trên hệ thống sao cho không có khối đơn lẻ nào bị lỗi do phải ghi nhiều. Tuổi thọ ước tính của bộ nhớ flash phụ thuộc vào:

  • Số lượt ghi
  • Viết mẫu
  • Dung lượng bộ nhớ flash hiện có. Kích thước bộ nhớ lớn hơn đồng nghĩa với việc cân bằng mức hao mòn thuật toán có thể trải rộng lượt ghi trên số lượng khối lớn hơn.
  • Kỹ thuật cân bằng đeo
  • Các yếu tố môi trường. Ví dụ: phạm vi nhiệt độ hoạt động là thường ở mức -20 đến 85 độ C. Nhiệt độ nằm ngoài phạm vi này có thể làm giảm tuổi thọ hơn nữa của bộ nhớ flash.

Tuổi thọ của bộ nhớ Flash có thể được tính toán với sự trợ giúp của công thức sau:

$$ \frac{Max\ erase\ cycles * Storage\ capacity}{Data\ written\ per\ year} = {Flash\ memory\ lifespan\ in\ years} $$

Tuy nhiên, hệ thống sẽ ngừng hoạt động bình thường rất lâu trước khi bộ nhớ flash mòn hoàn toàn do dung lượng bộ nhớ có thể sử dụng giảm đi và eMMC có thể có thời gian tồn tại ngắn hơn nữa tuỳ thuộc vào vào kỹ thuật cân bằng và mẫu ghi được sử dụng. Ngoài ra, số liệu ước tính này không cân nhắc tác động của những ứng dụng độc hại hoặc hoạt động không đúng cách, vốn có thể làm gián đoạn hệ thống Automotive bằng cách ghi khối dữ liệu rác lớn vào bộ nhớ flash mà không cần quyền đặc biệt.

Để phát hiện lỗi bộ nhớ flash có thể xảy ra trước khi nó thực sự xảy ra, hãy chọn tình trạng bộ nhớ nên tích hợp tính năng giám sát trong quá trình giám sát tình trạng tổng thể của hệ thống

Triển khai bộ nhớ flash

Android Automotive hỗ trợ các tính năng cho phép OEM bảo vệ và giám sát hệ thống của họ bộ nhớ trong để kéo dài tuổi thọ.

Giảm tình trạng hao mòn đèn flash

Những nhà sản xuất thiết bị gốc lo ngại về tình trạng hao mòn đèn flash trên bộ nhớ trong cũng có thể thêm thẻ SD đủ nhanh để được dùng làm bộ nhớ thông qua. Thẻ SD cần có các thuộc tính sau:

  • Khi được sử dụng, thẻ SD được mã hoá và an toàn để lưu trữ dữ liệu ứng dụng.
  • Khe cắm thẻ SD phải ở vị trí an toàn (người dùng không được nên tháo thẻ SD thường xuyên).
  • Không thể dùng thẻ SD để truyền dữ liệu giữa hệ thống Automotive và máy tính.
  • Việc tháo thẻ SD không ảnh hưởng đến hệ thống đang chạy. Tuy nhiên, bạn không nên xoá thành phần này trừ phi nó cần được thay thế.

Ứng dụng trên thẻ SD

Để tăng cường bảo vệ bộ nhớ trong của hệ thống Android Automotive, OEM có thể chỉ định việc các ứng dụng bên thứ ba có thể được cài đặt trên bộ nhớ trong để các ứng dụng chỉ có thể ghi vào mà chúng được cài đặt trên đó. Để định cấu hình, hãy thiết lập cấu hình sau trong lớp phủ tài nguyên:

<bool name="config_allow3rdPartyAppOnInternal">false</bool>

Để đảm bảo có thể cài đặt các ứng dụng bên thứ hai (những ứng dụng do nhà phát triển ứng dụng dành cho ô tô tạo ra) trên thẻ SD nếu chỉ thị của ô tô, nhà phát triển ứng dụng dành cho ô tô phải bao gồm android:installLocation=["auto" | "preferExternal"] trong tệp kê khai của ứng dụng.

Cài đặt ứng dụng nếu ô tô không cho phép cài đặt các ứng dụng bên thứ ba trên bộ nhớ trong không thành công nếu không có cờ này (hoặc nếu installLocation=internalOnly định cấu hình).

Lấy chỉ số về ổ đĩa

AAOS 13 ra mắt tính năng giám sát việc sử dụng quá mức bộ nhớ Flash và thu thập chỉ số trong Hệ thống ô tô Người kiểm soát. Để biết thông tin chi tiết, hãy xem Giám sát mức sử dụng bộ nhớ flash.

Android 8 ra mắt tính năng lưu trữ,một dịch vụ hệ thống giúp lấy mẫu và phát hành ổ đĩa và flash chỉ số bộ nhớ, chẳng hạn như thông tin về tổng mức sử dụng ổ đĩa, ước tính vòng đời của bộ nhớ flash, và theo số liệu thống kê I/O của mỗi ổ đĩa ứng dụng. OEM có thể sử dụng thông tin này để cảnh báo người dùng khi bộ nhớ trong bắt đầu lỗi hoặc khi các ứng dụng cụ thể đang thực hiện quá nhiều ổ đĩa I/Os. Để biết thông tin chi tiết, hãy xem Triển khai bộ nhớ.