Cosa consente di utilizzare la memoria flash per il sistema operativo in computer come tablet?


7

Da quando sono state inventate le unità flash (chiavette USB), le persone si sono chieste se potevano eseguire il loro sistema operativo su di esse. La risposta è stata "no" perché il numero di scritture richieste da un sistema operativo consumerebbe rapidamente l'unità flash.

Quando gli SSD sono diventati popolari, le tecnologie di livellamento dell'usura sono state migliorate per consentire ai sistemi operativi di funzionare su di essi.

Vari tablet, netbook e altri computer sottili utilizzano la memoria flash anziché un disco rigido o SSD e il sistema operativo è archiviato su di esso. Come è diventato improvvisamente pratico? Ad esempio, implementano in genere tecnologie di livellamento dell'usura?


"Quando gli SSD sono diventati popolari, sono state inventate le tecnologie di livellamento dell'usura" : ce l'hai al contrario.
segatura

@sawdust Grazie. Ho fatto una modifica per dire "migliorata". Sebbene, IIRC, i primi SSD non presentassero alcun livellamento dell'usura.
RockPaperLizard

2
Il focus della domanda è il supporto di memorizzazione e l'apparente conflitto con la "conoscenza comune". I tablet sono probabilmente in argomento e anche i netbook / Chromebook, che sono in argomento, sono piattaforme a cui si applica la domanda. Gli smartphone sono solo un esempio di un utilizzo simile di un supporto di archiviazione, non sono in realtà al centro della domanda. La domanda riguarda la comprensione della memoria flash e si applica ai dispositivi su argomento.
fixer1234,

Domanda decente, ma votazione per chiudere. FWIW, sebbene questa domanda sia decente, ma le risposte di tutti sembrano piuttosto focalizzate sull'opinione pubblica e fanno dichiarazioni ampie senza sostenere realmente fatti o dettagli.
JakeGould,

@JakeGould, buona osservazione; mi ha fatto rivedere la mia risposta. La linea di fondo è che un tipo di memoria flash può soddisfare un'esigenza specifica a un prezzo interessante, quindi viene utilizzato. In questo caso, la risposta si concentra davvero sui presupposti della domanda (la ragione per non usarla è i limiti di scrittura, che si applicano a qualsiasi progetto e scopo). Qualche suggerimento per fatti e dettagli che potrebbero fornire una risposta migliore?
Fixer 1234

Risposte:


4

"La risposta è stata" no "perché il numero di scritture richieste da un sistema operativo consumerebbe rapidamente l'unità flash."

TLDR: alla fine sono diventati convenienti per l'uso tradizionale.

Quell'usura è l'unica preoccupazione è un po 'un presupposto. Ci sono stati sistemi che esauriscono la memoria a stato solido per un considerevole periodo di tempo - molte persone che hanno costruito put-car si sono avviate da schede CF (che erano elettricamente compatibili con PATA - e banali da installare al posto di un disco rigido PATA) e PC industriali hanno avuto spazio di archiviazione piccolo, robusto, basato su flash. Detto questo, non c'erano molte opzioni per la persona media . È possibile acquistare una scheda CF costosa e un adattatore per un laptop o trovare un piccolo disco industriale molto costoso sull'unità modulo per un desktop. Non erano molto grandi rispetto ai dischi rigidi contemporanei (penso che i moderni IDE DOM superino gli 8 GB o i 16 GB). Abbastanza sicuro che avresti potuto ottenere unità di sistema a stato solido impostate molto prima che gli SSD "standard" diventassero comuni

Per quanto ne so, non sono stati apportati miglioramenti universali / magici al livellamento dell'usura. Ci sono stati miglioramenti incrementali (mentre ci stiamo allontanando da SLC costosi a MLC, TLC e persino QLC e dimensioni di processo più piccole, tutte a costi inferiori, con un rischio maggiore di usura). Flash è diventato molto più economico.

C'erano anche alcune alternative che non presentavano problemi di usura, ad esempio eseguendo l'intero sistema da una ROM (che è probabilmente memoria a stato solido), ram con batteria, che utilizzava molti SSD e dispositivi portatili come il palm pilot. Nessuno di questi è comune oggi. I dischi rigidi hanno oscillato rispetto a dire, ram con batteria (troppo costoso), primi dispositivi a stato solido (un po 'costosi) o contadini con bandiere (mai catturati, terribile densità di dati). Anche la moderna memoria flash è un discendente delle eeprom a cancellazione rapida ), e le eeprom sono state utilizzate nei dispositivi elettronici per la memorizzazione di cose come il firmware per secoli.

I dischi rigidi si trovavano semplicemente in una bella intersezione di volume elevato (che è importante!), Basso costo (ish) e spazio di archiviazione relativamente sufficiente .

Il motivo per cui trovi emmcs nei PC moderni e di fascia bassa è che i componenti sono relativamente economici, abbastanza grandi (per i sistemi operativi desktop) a quel costo e condividono elementi comuni con i componenti del cellulare, quindi sono prodotti sfusi con un'interfaccia standard. Offrono anche una grande densità di archiviazione per il loro volume. Considerando che molte di queste macchine hanno un misero disco da 32 o 64 GB, alla pari con i dischi rigidi della parte migliore di un decennio fa, sono un'opzione sensata in questo ruolo.

Stiamo finalmente raggiungendo il punto in cui è possibile archiviare una quantità ragionevole di memoria in modo economico e con velocità ragionevoli su emmcs e flash, motivo per cui le persone vanno per loro.


3

Tutti i dispositivi di memoria flash, dai tablet ai telefoni, agli smartwatch, agli SSD e persino le schede SD nelle fotocamere e nelle chiavette USB utilizzano la tecnologia NVRAM. La differenza sta nell'architettura della NVRAM e nel modo in cui il sistema operativo monta il filesystem su qualunque supporto di memorizzazione.

Per tablet e telefoni Android, la tecnologia NVRAM è basata su eMMC. I dati che posso trovare su questa tecnologia suggeriscono cicli di scrittura da 3k a 10k. Sfortunatamente, nulla di ciò che ho trovato finora è definitivo, dato che Wikipedia è vuota sui cicli di scrittura di questa tecnologia. Tutti gli altri posti che ho visto sono solo vari forum, quindi quasi non definirei una fonte affidabile.

Per fare un confronto, altra tecnologia NVRAM come gli SSD che usano la tecnologia NAND o NOR, i cicli di scrittura sono compresi tra 10k e 30k.

Ora, per quanto riguarda la scelta del sistema operativo su come montare il filesystem .... Non posso parlare di come lo fa Apple, ma per Android, il chip è partizionato come sarebbe un disco rigido. Hai una partizione del sistema operativo e una partizione dati, insieme a diverse altre partizioni proprietarie a seconda del produttore del dispositivo. La vera partizione di root risiede all'interno del bootloader, che è raggruppato come file compresso (jffs2, cramfs, ecc.) Insieme al kernel, in modo che quando l'avvio della fase 1 del dispositivo è completo (la schermata del logo del produttore di solito), quindi il kernel si è avviato e la partizione di root viene montata simultaneamente come un disco ram.

Quando il sistema operativo si avvia, monta il filesystem della partizione primaria (/ system, che è jffs2 sui dispositivi prima di Android 4.0 e ext2 / 3/4 sui dispositivi da Android 4.0 e xfs sugli ultimi dispositivi) come di sola lettura in modo che no i dati possono essere scritti su di esso. Questo, ovviamente, può essere aggirato dal cosiddetto "rooting" del tuo dispositivo, che ti dà accesso come superutente e ti consente di rimontare la partizione come lettura / scrittura. I tuoi dati "utente" vengono scritti in una diversa partizione sul chip (/ data, che segue la stessa convenzione di cui sopra in base alla versione di Android).

Con sempre più telefoni che abbandonano l'alloggiamento della sdcard, potresti pensare di colpire prima il limite di scrittura perché tutti i tuoi dati vengono ora salvati nella memoria eMMC anziché nella sdcard. Fortunatamente, la maggior parte dei file system rileva una scrittura non riuscita in una determinata area di archiviazione. Se una scrittura fallisce, i dati vengono silenziosamente salvati in una nuova area della memoria e l'area danneggiata (nota come blocco danneggiato) viene isolata dal driver del file system in modo che i dati non vengano più scritti lì in futuro. Se una lettura fallisce, i dati vengono contrassegnati come corrotti e all'utente viene richiesto di eseguire un controllo del file system o di controllare il disco, oppure il dispositivo controlla automaticamente il file system al successivo avvio.

È un dato di fatto, Google ha un brevetto per il rilevamento e la gestione automatici di blocchi danneggiati.

https://www.google.com/patents/US7690031

Per approfondire, la tua domanda "come è diventato improvvisamente pratico?" non è la domanda giusta da porre. Piuttosto, non è mai stato impraticabile, in primo luogo. È stato fortemente sconsigliato di installare il sistema operativo (Windows) su un SSD (presumibilmente) a causa del numero di scritture che il sistema operativo esegue sul disco.

Ad esempio, il registro riceve letteralmente centinaia di letture e scritture al secondo, che possono essere visualizzate con lo strumento Regmon di Microsoft / SysInternals ( https://technet.microsoft.com/en-us/sysinternals/regmon.aspx )

L'installazione del sistema operativo (Windows) è stata sconsigliata sulle unità SSD di prima generazione perché, con la mancanza del livellamento dell'usura, i dati scritti nel registro ogni secondo probabilmente raggiungevano i primi utenti e provocavano sistemi non avviabili a causa della corruzione del registro.

Con tablet e telefoni e praticamente qualsiasi altro dispositivo incorporato, non esiste un registro (ovviamente i dispositivi Windows Embedded sono eccezioni) e quindi non vi è alcuna preoccupazione che i dati vengano costantemente scritti nelle stesse parti del supporto flash.

Per i dispositivi Windows Embedded, come molti dei chioschi (inclusi i chioschi self checkout di Walmart e Kroger) in pubblico - sai, quelli in cui potresti vedere un BSOD casuale di volta in volta - non ce ne sono molti di configurazione che può essere eseguita, poiché sono pre-progettati con configurazioni che non intendono mai cambiare. Le uniche modifiche apportate sono prima della scrittura del chip nella maggior parte dei casi. Tutto ciò che deve essere salvato (come il pagamento al negozio di alimentari) viene effettuato tramite la rete ai database del negozio su un server.


2

La tua domanda si basa sul presupposto che i limiti di scrittura della memoria flash, senza un elevato livello di usura, la rendono inadatta per la memorizzazione principale di qualsiasi dispositivo di elaborazione. Esiste una gamma di dispositivi informatici, inclusi tablet, netbook, smartphone, ecc., Che utilizzano la memoria flash per questo scopo, senza il livellamento dell'usura riscontrato negli SSD.

Vita di memoria

Non sono riuscito a trovare prove che in generale la memoria utilizzata in questi dispositivi abbia una durata maggiore rispetto alle unità flash o alle schede SD.

Sebbene venga utilizzata la memoria flash, ci sono alcune differenze rispetto a quanto contenuto in una pen drive o in una scheda SD. Questi computer utilizzano in genere eMMC, che contiene il controller e la memoria flash su un singolo chip, con un'architettura diversa rispetto a una scheda SD o unità flash. Una differenza per il controller eMMC è che emula un disco rigido, quindi il computer lo vede come un dispositivo avviabile. Questa è una comodità di progettazione.

Alcuni produttori affermano che il loro controller eMMC migliora il livellamento dell'usura e ha una correzione degli errori più solida rispetto a quella che si trova in una tipica scheda SD o unità flash. L'implicazione del ECC migliorato è che può tollerare un maggiore degrado e funzionare ancora, quindi ha una vita più lunga.

Poiché tutto ciò è proprietario, è difficile trovare dati concreti per supportarlo. Anche se ci sono eMMC di fascia alta che durano più a lungo, non è necessariamente quello che viene utilizzato nella maggior parte di questi dispositivi. Le varie informazioni che ho potuto trovare sui limiti di scrittura eMMC sembrano collocarle nello stesso campo generale delle schede SD e delle pen drive.

Sembrerebbe che, in generale, la memoria a lunga durata non sia la base per utilizzare la memoria flash come memoria principale in questi dispositivi. Tutti non avevano torto sui limiti di scrittura; l'utilizzo può essere spiegato dal fatto che i requisiti sono diversi.

Differenze di piattaforma

PC e laptop sono computer di uso generale che le persone si aspettano di utilizzare a lungo. Le unità flash e le schede di memoria non si adattano perfettamente al loro dispositivo di archiviazione principale, data la quantità tipica di scrittura che sono progettati per gestire e la durata prevista. Ciò si riflette nella guida descritta nella domanda e non è cambiata (almeno per l'attuale generazione di memoria flash).

Tablet, netbook, smartphone e simili sono una situazione diversa. Quelli che usano la memoria flash come memoria principale sono dispositivi a scopo limitato. Le attività che sono progettate per gestire, le loro risorse hardware minime disponibili per supportare altri usi, la loro progettazione di base, il loro sistema operativo e software, comportano meno scrittura rispetto a un PC. Dato che questi dispositivi si basano sulla memoria flash (in un formato non sostituibile), i limiti di scrittura sono considerati in ciò che viene eseguito su di essi.

Hanno anche un'aspettativa di vita più breve. I dispositivi che utilizzano la memoria flash come memoria principale sono economici, progettati per un mercato in cui le persone si aggiornano spesso. I dispositivi offrono determinate caratteristiche e capacità in un fattore di forma ridotto e durano fino a quando durano in base ai componenti da cui sono costruiti. È probabile che la batteria si guasti prima della memoria flash o che alcune parti si rompano. E c'è un marketing costante per convincerti che il tuo dispositivo è obsoleto e deve essere sostituito dall'ultimo modello.

C'è una storia che Henry Ford utilizzava per mandare i suoi ingegneri nei cantieri di spazzatura alla ricerca di componenti di macchine morte che erano ancora buone. L'idea era che quelle parti potessero essere realizzate in modo più economico perché non dovevano durare a lungo. Tale logica si applica alla memoria flash di questi dispositivi. Deve solo durare abbastanza a lungo, non deve durare a lungo nel dispositivo.

Linea di fondo

Esistono nicchie di mercato per dispositivi di elaborazione economici, minuscoli che non scrivono nello storage primario tanto quanto un PC è progettato per gestire e che non hanno le stesse aspettative di durata. La memoria sotto forma di eMMC è economica, piccola, avviabile e abbastanza buona per quell'applicazione.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.