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

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

    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:

    Helt 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 slitasjeknologi blitt forbedret 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.

    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 ingen av det jeg hittil hittil funnet definitiv, 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 produsenten av enheten.

    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å kjernen stø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 at at ingen data kan skrives til den. Dette kan selvfølgelig bli jobbet rundt med såkalt "røtter" på enheten din, som gir deg tilgang som en superbruker og lar deg omforme partisjonen som lese / skrive. Dine "bruker" data 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, kan det hende du tror at du vil slå 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 bestemt 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 å detektere og håndtere dårlige blokker: Administrere dårlige blokker i flashminne for elektronisk data flash-kort

    For å få mer til det, 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), ble til slutt fanget opp til tidlige adoptere og resulterte i uopprettelige systemer på grunn av registerkorrupsjon.

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

    For Windows-innebygde enheter, for eksempel mange av kiosker som finnes på offentlige steder (som Walmart, Kroger, etc.) der du kanskje ser en tilfeldig BSOD fra tid til annen, er det ikke mye konfigurasjon som kan gjøres siden de 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 datamaskin, 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 systemstasjoner satt opp før standard SSDer ble vanlige.

    Det har ikke vært noen universelle / magiske forbedringer i slitasjeplanering 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 sikkert 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 rocket 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 fortløpende eeproms og eeproms har blitt brukt i elektroniske enheter for lagring av ting som fastvare i evigheter.

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

    Grunnen til at du finner eMMCer 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 når endelig til det punktet hvor du kan lagre en rimelig mengde minne rimelig og med rimelige hastigheter på eMMC og flash, derfor går folk for 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.

    Bilde Kreditt: Martin Voltri (Flickr)