16Aug

Hva gjør eMMC Flash Memory Viable i mobile enheter, men ikke PCer?

click fraud protection

Bruke flashminne til å kjøre et stasjonært system, som Windows, ble rådet til for en stund. Men hva gjorde det til et ønskelig og levedyktig alternativ for mobile enheter? Dagens SuperUser Q & A-innlegg har svaret på en nysgjerrig leser spørsmål.

Dagens Spørsmål &Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.

Spørsmålet

SuperUser leser RockPaperLizard vil vite hva som gjør eMMC flashminne levedyktig i mobile enheter, men ikke PCer:

Siden USB-minnepinner ble oppfunnet, har folk lurt på om de kunne kjøre operativsystemene på dem. Svaret var alltid "nei" fordi antall skrivinger som kreves av et operativsystem, ville raskt ta dem ut.

Siden SSD-er er blitt mer populære, har slitasje-teknologien blitt bedre for å tillate operativsystemer å kjøre på dem. Ulike tabletter, netbooks og andre slanke datamaskiner bruker flashminne i stedet for en harddisk eller SSD, og ​​operativsystemet er lagret på det.

instagram viewer

Hvordan ble dette plutselig blitt praktisk? Gjennomfører de typisk slitasje-teknologier, for eksempel?

Hva gjør eMMC flashminne levedyktig i mobile enheter, men ikke PCer?

Svaret

SuperUser-bidragsytere Speeddymon og Journeyman Geek har svaret for oss. Først opp, Speeddymon:

Alle flashminne enheter, fra tabletter til mobiltelefoner, smarte klokker, SSDer, SD-kort i kameraer og USB-minnepinner bruker NVRAM-teknologi. Forskjellen er i NVRAM-arkitekturen og hvordan operativsystemet monterer filsystemet på hvilket lagringsmedium det er på.

For Android-tabletter og mobiltelefoner er NVRAM-teknologien eMMC-basert. Dataene jeg finner på denne teknologien antyder mellom 3k til 10k skrive sykluser. Dessverre er ikke noe av det jeg hittil hittil funnet definitivt, siden Wikipedia er tomt på denne teknologiens skriveprogrammer. Alle andre steder jeg har sett, skjedde for å være forskjellige fora, så knapt det jeg ville kalle en pålitelig kilde.

Til sammenligning er skrivecyklene på annen NVRAM-teknologi som SSD, som bruker NAND eller NOR-teknologi, mellom 10k og 30k.

Nå, angående operativsystemets valg av hvordan man monterer filsystemet. Jeg kan ikke snakke om hvordan Apple gjør det, men for Android er brikken delt ut som en harddisk ville være. Du har en operativsystempartisjon, en datapartisjon og flere andre proprietære partisjoner avhengig av enhetsprodusenten.

Den virkelige rotpartisjonen lever inne i opplastingsprogrammet, som er samlet som en komprimert fil( jffs2, cramfs, etc.) sammen med kjernen, slik at når enhetens start 1-oppstart er fullført( produsentens logoskjerm vanligvis), såkjernestøvler og rotpartisjonen er samtidig montert som en RAM-disk.

Når operativsystemet starter opp, monterer det primærpartisjonens filsystem( / system, som er jffs2 på enheter før Android 4.0, ext2 /3/ 4 på enheter siden Android 4.0 og xfs på de nyeste enhetene) som skrivebeskyttet slik atIngen data kan skrives til den. Dette kan selvfølgelig bli bearbeidet av såkalt "rooting" på enheten din, som gir deg tilgang som en super bruker og lar deg omforme partisjonen som lese / skrive. Dine "brukerdata" er skrevet til en annen partisjon på brikken( / data, som følger samme konvensjon som ovenfor basert på Android-versjonen).

Med flere og flere mobiltelefoner som slår ut SD-kortspor, tror du kanskje at du kommer til å trykke skrivecykluskappen raskere fordi alle dataene dine nå blir lagret i eMMC-lagring i stedet for et SD-kort. Heldigvis oppdager de fleste filsystemer en feilaktig skrive til et gitt lagringsområde. Hvis en skriv mislykkes, blir dataene stille lagret til et nytt lagringsområde, og det dårlige området( kjent som en dårlig blokk) er koblet av filsystemdriveren slik at data ikke lenger er skrevet der i fremtiden. Hvis en les mislykkes, blir dataene merket som korrupte, og enten blir brukeren fortalt å kjøre en filsystemkontroll( eller sjekk disk), eller enheten kontrollerer automatisk filsystemet under neste oppstart.

Faktisk har Google et patent for automatisk å oppdage og håndtere dårlige blokker: Administrere dårlige blokker i flashminne for elektronisk datakort

For å få mer til det punktet, er spørsmålet ditt om hvordan dette plutselig ble praktisk, ikke det rette spørsmålet. Det var aldri upraktisk i utgangspunktet. Det ble sterkt anbefalt å installere et operativsystem( Windows) på en SSD( antagelig) på grunn av antall skriver det til en disk.

For eksempel mottar registeret bokstavelig talt hundrevis av leser og skriver per sekund, som kan ses med Microsoft-SysInternals Regmon Tool.

Installering av Windows ble rådet til på SSD-er av første generasjon fordi de data som ble skrevet til registret hvert sekund( sannsynligvis), til slutt tok opp til tidlige adopters og resulterte i ubøyelig system på grunn av registerkorrupsjon.

Med tabletter, mobiltelefoner og stort sett alle andre innebygde enheter, er det ikke noe register( Windows Embedded Devices er unntak, selvfølgelig), og det er derfor ingen bekymring for at data stadig blir skrevet til de samme delene av flashmediet.

For Windows Embedded-enheter, for eksempel mange av kioskene som finnes på offentlige steder( som Walmart, Kroger, etc.) der du kan se en tilfeldig BSOD fra tid til annen, er det ikke mye konfigurasjon som kan gjøres sidenDe er pre-designet med konfigurasjoner som er ment å aldri forandre seg. De eneste tidsendringene finner sted før brikken er skrevet i de fleste tilfeller. Alt som trenger å bli lagret, for eksempel betalingen din til matbutikken, gjøres over nettverket til butikkens databaser på en server.

Etterfulgt av svaret fra Journeyman Geek:

Svaret var alltid "nei" fordi antall skrivinger som kreves av et operativsystem, ville raskt ta dem ut.

De ble til slutt kostnadseffektive for vanlig bruk. At "slitasje" er den eneste bekymringen er litt av en antagelse. Det har vært systemer som kjører av solid state-minne i en betydelig tidsperiode. Mange folk som bygget bilstereier startet av CF-kort( som var elektrisk kompatible med PATA og trivielt å installere i forhold til PATA-harddisker), og industrielle datamaskiner har hatt liten, robust flashbasert lagring.

Når det er sagt, var det ikke mange alternativer for den gjennomsnittlige personen. Du kan kjøpe et pricy CF-kort og en adapter for en bærbar PC, eller finn en liten, veldig pricy industritrikk på en modulenhet for skrivebordet. De var ikke veldig store sammenlignet med moderne harddisker( moderne IDE DOMs topp ut på 8GB eller 16GB tror jeg).Jeg er ganske sikker på at du kunne ha fått solid state system stasjoner satt opp før standard SSDer ble vanlige.

Det har ikke vært noen universelle / magiske forbedringer i slitasjenivået så vidt jeg vet. Det har vært trinnvise forbedringer mens vi har flyttet seg fra pricy SLC til MLC, TLC, og til og med QLC sammen med mindre prosessstørrelser( alle med lavere kostnad med litt høyere risiko for slitasje).Flash har blitt mye billigere.

Det var også noen få alternativer som ikke hadde slitasjeproblemer. For eksempel kjører hele systemet av en ROM( som antagelig er solid state-lagring) og batteridrevet RAM, som mange tidlige SSDer og bærbare enheter som Palm Pilot brukte. Ingen av disse er vanlige i dag. Harddisker rocked i forhold til å si, batteridrevet RAM( for dyrt), tidlig solid state-enheter( noe pricy), eller bønder med flagg( aldri fanget på grunn av forferdelig datatetthet).Selv moderne flashminne er en etterkommer av raske eeproms og eeproms har blitt brukt i elektroniske enheter for lagring av ting som fastvare i mange aldre.

Harddisker var ganske enkelt et fint skjæringspunkt med høyt volum( hvilket er viktig), lav pris og relativt tilstrekkelig lagring.

Grunnen til at du finner eMMC-er i moderne, lave datamaskiner er komponentene er relativt billige, store nok( for stasjonære operativsystemer) til den prisen, og deler felles med mobiltelefonkomponenter, slik at de produseres i bulk med et standardgrensesnitt. De gir også stor tetthet av lagring for deres volum. Tatt i betraktning mange av disse maskinene har en dårlig 32 GB eller 64 GB-stasjon, på nivå med harddisker fra den bedre delen av et tiår siden, de er et fornuftig alternativ i denne rollen.

Vi kommer endelig til det punktet hvor du kan lagre en rimelig mengde minne rimelig og med rimelige hastigheter på eMMC og flash, og derfor går folk til dem.

Har du noe å legge til forklaringen? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.

Image Credit: Martin Voltri( Flickr)