Google si impegna a promuovere l'equità razziale per le comunità nere. Vedi come.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Gestione dell'usura del flash in Android Automotive

La memoria interna di Android Automotive utilizza una MultiMediaCard integrata (eMMC) con migliaia di cicli di cancellazione / scrittura; se l'eMMC fallisce, il sistema può diventare inutilizzabile. Poiché i veicoli hanno una lunga durata (in genere 10+ anni), l'eMMC deve essere estremamente affidabile. Questa pagina descrive il comportamento eMMC e il modo in cui gli OEM possono ridurre il rischio di guasti eMMC (evitando così i sistemi Android Automotive guasti).

comportamento eMMC

I dispositivi eMMC utilizzano tecniche di livellamento dell'usura per aggirare le limitazioni di cancellazione / scrittura organizzando i dati e distribuendo le scritture in modo uniforme attraverso il sistema (quindi nessun singolo blocco fallisce a causa di scritture intense). La durata stimata di eMMC dipende da:

  • Quantità di scritture . Sui telefoni, la quantità di dati scritti nella memoria interna può essere superiore a 10 GB al giorno. Sulle implementazioni automobilistiche, non disponiamo di dati reali su quanti dati verranno scritti a causa di applicazioni limitate. Tuttavia, quando gli utenti trasmettono musica di alta qualità e utilizzano la navigazione, osserviamo i dati da 50 MB scritti su eMMC ogni minuto. In futuro, potremmo avere altri tipi di app ad alta intensità di scrittura, come le applicazioni della dashboard che registrano e archiviano continuamente video. Inoltre, alcune auto saranno condivise con veicoli usati più ore al giorno. Per questi e altri motivi, ci aspettiamo che le implementazioni di Android Automotive abbiano più scritture eMMC di un telefono.
  • Scrivi schemi . Le scritture e le cancellazioni vengono eseguite in blocchi. La scrittura frequente di dati in blocchi piccoli porta l'eMMC più velocemente rispetto alla scrittura della stessa quantità di dati meno frequentemente e in blocchi più grandi.
  • Dimensione disponibile di eMMC . Dimensioni di archiviazione maggiori indicano che l'algoritmo di livellamento dell'usura può diffondere le scritture su un numero maggiore di blocchi.
  • Indossa tecniche di livellamento.
  • Fattori ambientali . Gli esempi includono un intervallo di temperatura operativa di solito -20 ~ 85 Celsius; la temperatura oltre questo intervallo potrebbe ridurre ulteriormente la durata della eMMC.

Per un eMMC con 16 GB di spazio utilizzabile e 3k cicli di cancellazione / scrittura, stimiamo quanto segue:

Scritte quotidiane 16 GB 32GB
Tempo di vita stimato 10 anni 5 anni

Tuttavia, il sistema smetterebbe di funzionare correttamente molto prima che l'eMMc si esaurisca completamente quando le dimensioni di archiviazione utilizzabili diminuiscono e l'eMMC potrebbe avere una durata ancora più breve a seconda delle tecniche di livellamento e dei modelli di scrittura utilizzati. Inoltre, questa stima non prende in considerazione gli effetti di app comportamentali o malevole, che potrebbero attaccare i sistemi automobilistici scrivendo grandi blocchi di dati spazzatura su eMMC senza autorizzazioni speciali.

Per rilevare il possibile errore eMMC prima che si verifichi effettivamente, è necessario integrare un adeguato monitoraggio dello stato di archiviazione come parte del monitoraggio generale dello stato del sistema

Implementazione

Android O supporta funzionalità che consentono agli OEM di proteggere e monitorare la memoria interna di Android Automotive e prolungarne la durata.

Limitazione di app di terze parti

Per proteggere la memoria interna del sistema Android Automotive, Android O consente agli OEM di configurare se le app di terze parti possono essere installate sulla memoria interna (le app possono scrivere solo nella partizione su cui sono state installate). Per configurare, impostare la seguente configurazione nell'overlay delle risorse:

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

Riduzione dell'usura del flash

Gli OEM preoccupati per l'usura del flash sulla memoria interna possono anche aggiungere una scheda SD abbastanza veloce da essere utilizzata come memoria adottata. La scheda SD ha il seguente comportamento:

  • Una volta adottata, la scheda SD verrà crittografata ed è sicura per l'archiviazione dei dati delle app.
  • Lo slot per scheda SD deve trovarsi in un luogo sicuro (gli utenti non devono rimuovere frequentemente la scheda SD).
  • La scheda SD non può essere utilizzata per il trasferimento di dati tra sistemi automobilistici e un computer.
  • L'espulsione della scheda SD non influisce su un sistema in esecuzione. Tuttavia, non dovrebbe essere rimosso a meno che non debba essere sostituito.

Per garantire che le applicazioni di terze parti (quelle create dagli sviluppatori di app per auto) possano essere installate sulla scheda SD se l' android: installLocation =["auto" | "preferExternal"] , gli sviluppatori di app per auto devono includere android: installLocation =["auto" | "preferExternal"] nel file manifest dell'app.

Se l'automobile non consente l'installazione di app di terze parti nella memoria interna (come descritto in Limitazione delle app di terze parti ), senza questo flag (o se è configurata l'impostazione installLocation =internalOnly ), l'installazione dell'app non riuscirà.

Ottenere metriche del disco con archiviate

Android O introduce l' archiviazione , un nuovo servizio di sistema che campiona e pubblica metriche su disco ed eMMc come informazioni sull'utilizzo complessivo del disco, stima della durata eMMC e statistiche I / O del disco per applicazione. Gli OEM possono utilizzare queste informazioni per avvisare gli utenti quando la memoria interna inizia a fallire o quando applicazioni specifiche eseguono troppi I / O su disco. Per i dettagli, consultare Implementazione memorizzata .

Validazione

Questa funzione è stata testata nei test PackageManager .