Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Gestión de Flash Wear en Android Automotive

El almacenamiento interno de Android Automotive utiliza una MultiMediaCard integrada (eMMC) con miles de ciclos de borrado / escritura; si el eMMC falla, el sistema puede quedar inutilizable. Como los vehículos tienen una vida útil prolongada (por lo general, más de 10 años), el eMMC debe ser extremadamente confiable. Esta página describe el comportamiento de eMMC y cómo los OEM pueden reducir el riesgo de un eMMC fallido (y así evitar los sistemas Android Automotive fallidos).

Comportamiento eMMC

Los dispositivos eMMC utilizan técnicas de nivelación de desgaste para evitar las limitaciones de borrado / escritura al organizar los datos y distribuir las escrituras de manera uniforme en todo el sistema (por lo que ningún bloque falla debido a escrituras intensivas). La vida estimada de eMMC depende de:

  • Cantidad de escrituras . En los teléfonos, la cantidad de datos escritos en el almacenamiento interno puede superar los 10 GB por día. En las implementaciones automotrices, no tenemos datos del mundo real sobre cuántos datos se escribirán debido a las aplicaciones limitadas. Sin embargo, cuando los usuarios transmiten música de alta calidad y utilizan la navegación, observamos 50 MB de datos escritos en eMMC cada minuto. En el futuro, es posible que tengamos otros tipos de aplicaciones de escritura intensiva, como aplicaciones de cámara de tablero que graban y almacenan videos continuamente. Además, algunos coches serán vehículos compartidos que se utilizarán varias horas al día. Por estas y otras razones, esperamos que las implementaciones de Android Automotive tengan más escrituras eMMC que un teléfono.
  • Escribe patrones . Las escrituras y borrados se realizan en bloques. Escribir datos con frecuencia en pequeños fragmentos desgasta el eMMC más rápido que escribir la misma cantidad de datos con menos frecuencia y en fragmentos más grandes.
  • Tamaño disponible de eMMC . Un tamaño de almacenamiento más grande significa que el algoritmo de nivelación del desgaste puede distribuir las escrituras en un mayor número de bloques.
  • Use técnicas de nivelación.
  • Factores ambientales . Los ejemplos incluyen un rango de temperatura de funcionamiento de -20 ~ 85 Celsius; la temperatura más allá de este rango podría acortar aún más la vida útil del eMMC.

Para un eMMC con 16 GB de espacio utilizable y 3000 ciclos de borrado / escritura, estimamos lo siguiente:

Escrituras diarias 16 GB 32 GB
Tiempo de vida estimado 10 años 5 años

Sin embargo, el sistema dejaría de funcionar correctamente mucho antes de que el eMMc se agote por completo a medida que disminuya el tamaño de almacenamiento utilizable, y el eMMC puede tener una vida útil aún más corta según las técnicas de nivelación y los patrones de escritura utilizados. Además, esta estimación no considera los efectos de aplicaciones maliciosas o que se comporten mal, que podrían atacar los sistemas automotrices al escribir grandes bloques de datos basura en eMMC sin permisos especiales.

Para detectar la posible falla de eMMC antes de que realmente suceda, se debe incorporar una supervisión adecuada del estado del almacenamiento como parte del control general del estado del sistema.

Implementación

Android O admite funciones que permiten a los OEM proteger y supervisar el almacenamiento interno de Android Automotive y prolongar su vida útil.

Restringir aplicaciones de terceros

Para proteger el almacenamiento interno del sistema Android Automotive, Android O permite a los OEM configurar si las aplicaciones de terceros se pueden instalar en el almacenamiento interno (las aplicaciones solo pueden escribir en la partición en la que se instalaron). Para configurar, establezca la siguiente configuración en la superposición de recursos:

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

Reducir el desgaste del flash

Los OEM preocupados por el desgaste del flash en el almacenamiento interno también pueden agregar una tarjeta SD que sea lo suficientemente rápida para usarse como almacenamiento adoptado. La tarjeta SD tiene el siguiente comportamiento:

  • Cuando se adopte, la tarjeta SD se cifrará y será segura para almacenar datos de aplicaciones.
  • La ranura para tarjetas SD debe estar en un lugar seguro (no se espera que los usuarios retiren la tarjeta SD con frecuencia).
  • La tarjeta SD no se puede utilizar para transferir datos entre sistemas automotrices y una computadora.
  • La expulsión de la tarjeta SD no afectará al sistema en funcionamiento. Sin embargo, no se debe quitar a menos que sea necesario reemplazarlo.

Para garantizar que las aplicaciones de terceros (las creadas por desarrolladores de aplicaciones para automóviles) se puedan instalar en la tarjeta SD si el automóvil lo exige, los desarrolladores de aplicaciones para automóviles deben incluir android: installLocation =["auto" | "preferExternal"] en el archivo de manifiesto de la aplicación.

Si el automóvil no permite que se instalen aplicaciones de terceros en el almacenamiento interno (como se describe en Restricción de aplicaciones de terceros ), sin este indicador (o si la installLocation =internalOnly está configurada), la instalación de la aplicación fallará.

Obtener métricas de disco con storaged

Android O presenta storaged , un nuevo servicio de sistema que muestra y publica métricas de disco y eMMc, como información sobre el uso general del disco, estimación de la vida útil de eMMC y estadísticas de E / S de disco por aplicación. Los OEM pueden usar esta información para advertir a los usuarios cuando el almacenamiento interno comienza a fallar o cuando aplicaciones específicas están realizando demasiadas E / S de disco. Para obtener más información, consulte Implementación de almacenado .

Validación

Esta característica se prueba en las pruebas de PackageManager .