in

Qu’est-ce qui rend la mémoire flash eMMC viable dans les appareils mobiles, mais pas sur les PC?

L’utilisation de la mémoire flash pour exécuter un système de bureau, comme Windows, a été déconseillée pendant un certain temps. Mais qu’est-ce qui en a fait une option souhaitable et viable pour les appareils mobiles? Le post de questions-réponses des super-utilisateurs d’aujourd’hui a la réponse à la question d’un lecteur curieux.

La question

Le lecteur SuperUser RockPaperLizard veut savoir ce qui rend la mémoire flash eMMC viable sur les appareils mobiles, mais pas sur les PC:

Depuis que les clés USB ont été inventées, les gens se demandent s’ils pourraient exécuter leurs systèmes d’exploitation sur eux. La réponse était toujours «non» car le nombre d’écritures requises par un système d’exploitation les épuiserait rapidement.

À mesure que les disques SSD sont devenus plus populaires, la technologie de nivellement de l’usure s’est améliorée afin de permettre aux systèmes d’exploitation de fonctionner sur eux. Diverses tablettes, netbooks et autres ordinateurs minces utilisent la mémoire flash au lieu d’un disque dur ou d’un SSD, et le système d’exploitation y est stocké.

Comment cela est-il soudainement devenu pratique? Implémentent-ils généralement des technologies de nivellement de l’usure, par exemple?

Qu’est-ce qui rend la mémoire flash eMMC viable sur les appareils mobiles, mais pas sur les PC?

La réponse

Les contributeurs SuperUser Speeddymon et Journeyman Geek ont ​​la réponse pour nous. Tout d’abord, Speeddymon:

Tous les périphériques de mémoire flash, des tablettes aux téléphones mobiles, en passant par les montres intelligentes, les disques SSD, les cartes SD dans les appareils photo et les clés USB utilisent la technologie NVRAM. La différence réside dans l’architecture NVRAM et dans la manière dont le système d’exploitation monte le système de fichiers sur le support de stockage sur lequel il se trouve.

Pour les tablettes Android et les téléphones mobiles, la technologie NVRAM est basée sur eMMC. Les données que je peux trouver sur cette technologie suggèrent entre 3k et 10k cycles d’écriture. Malheureusement, rien de ce que j’ai trouvé jusqu’à présent n’est définitif, car Wikipédia est vide sur les cycles d’écriture de cette technologie. Tous les autres endroits que j’ai consultés se sont avérés être différents forums, donc à peine ce que j’appellerais une source fiable.

À titre de comparaison, les cycles d’écriture sur d’autres technologies NVRAM telles que les SSD, qui utilisent la technologie NAND ou NOR, sont compris entre 10k et 30k.

Maintenant, concernant le choix du système d’exploitation sur la façon de monter le système de fichiers. Je ne peux pas parler de la façon dont Apple le fait, mais pour Android, la puce est partitionnée comme le serait un disque dur. Vous disposez d’une partition de système d’exploitation, d’une partition de données et de plusieurs autres partitions propriétaires selon le fabricant du périphérique.

La vraie partition racine vit à l’intérieur du chargeur de démarrage, qui est fourni sous forme de fichier compressé (jffs2, cramfs, etc.) avec le noyau, de sorte que lorsque le démarrage de l’étape 1 du périphérique est terminé (l’écran du logo du fabricant généralement), le noyau démarre et la partition racine est montée simultanément en tant que disque RAM.

Au démarrage du système d’exploitation, il monte le système de fichiers de la partition principale (/ system, qui est jffs2 sur les appareils avant Android 4.0, ext2 / 3/4 sur les appareils depuis Android 4.0 et xfs sur les derniers appareils) en lecture seule afin qu’aucune donnée ne peut y être écrite. Cela peut, bien sûr, être contourné par ce que l’on appelle le «rooting» de votre appareil, qui vous donne accès en tant que super utilisateur et vous permet de remonter la partition en lecture / écriture. Vos données «utilisateur» sont écrites sur une partition différente de la puce (/ data, qui suit la même convention que ci-dessus en fonction de la version Android).

Avec de plus en plus de téléphones mobiles abandonnant les emplacements pour cartes SD, vous pourriez penser que vous atteindrez le cycle d’écriture plus tôt car toutes vos données sont maintenant enregistrées sur le stockage eMMC au lieu d’une carte SD. Heureusement, la plupart des systèmes de fichiers détectent un échec d’écriture dans une zone de stockage donnée. Si une écriture échoue, les données sont enregistrées silencieusement dans une nouvelle zone de stockage et la zone défectueuse (appelée bloc défectueux) est bouclée par le pilote du système de fichiers afin que les données n’y soient plus écrites à l’avenir. Si une lecture échoue, les données sont marquées comme corrompues et l’utilisateur est invité à exécuter une vérification du système de fichiers (ou à vérifier le disque), ou le périphérique vérifie automatiquement le système de fichiers lors du prochain démarrage.

En fait, Google a un brevet pour détecter et gérer automatiquement les blocs défectueux: Gestion des blocs défectueux dans la mémoire flash pour la carte flash de données électroniques

Pour aller plus loin, votre question sur la façon dont cela est soudainement devenu pratique n’est pas la bonne question à poser. Cela n’a jamais été impossible en premier lieu. Il est fortement déconseillé d’installer un système d’exploitation (Windows) sur un SSD (vraisemblablement) en raison du nombre d’écritures qu’il effectue sur un disque.

Par exemple, le registre reçoit littéralement des centaines de lectures et d’écritures par seconde, ce qui peut être vu avec le Outil Microsoft-SysInternals Regmon.

L’installation de Windows a été déconseillée sur les disques SSD de première génération car, faute de nivellement de l’usure, les données écrites dans le registre toutes les secondes (probablement) ont finalement rattrapé les premiers utilisateurs et ont entraîné des systèmes non amorçables en raison de la corruption du registre.

Avec les tablettes, les téléphones mobiles et à peu près tout autre appareil intégré, il n’y a pas de registre (les appareils Windows Embedded étant des exceptions, bien sûr) et donc, il n’y a pas de souci que les données soient constamment écrites sur les mêmes parties du support flash.

Pour les appareils Windows Embedded, tels que la plupart des kiosques trouvés dans les lieux publics (comme Walmart, Kroger, etc.) où vous pouvez voir un BSOD aléatoire de temps en temps, il n’y a pas beaucoup de configuration à effectuer car ils sont préconçus avec des configurations destinées à ne jamais changer. Le seul moment où les changements ont lieu est avant l’écriture de la puce dans la plupart des cas. Tout ce qui doit être sauvegardé, comme votre paiement à l’épicerie, est effectué via le réseau vers les bases de données du magasin sur un serveur.

Suivi de la réponse de Journeyman Geek:

La réponse était toujours «non» car le nombre d’écritures requises par un système d’exploitation les épuiserait rapidement.

Ils sont finalement devenus rentables pour une utilisation grand public. Cette «usure» est la seule préoccupation est un peu une hypothèse. Il y a eu des systèmes fonctionnant sur une mémoire à semi-conducteurs pendant une période de temps considérable. De nombreux constructeurs de voitures ont démarré avec des cartes CF (qui étaient électriquement compatibles avec PATA et faciles à installer par rapport aux disques durs PATA), et les ordinateurs industriels ont eu un petit stockage robuste basé sur flash.

Cela dit, il n’y avait pas beaucoup d’options pour la personne moyenne. Vous pouvez acheter une carte CF chère et un adaptateur pour un ordinateur portable, ou trouver un petit disque industriel très cher sur une unité de module pour un ordinateur de bureau. Ils n’étaient pas très volumineux par rapport aux disques durs contemporains (les DOM IDE modernes atteignent 8 Go ou 16 Go je pense). Je suis presque sûr que vous auriez pu configurer des disques SSD bien avant que les disques SSD standard ne deviennent courants.

À ma connaissance, il n’y a pas vraiment eu d’améliorations universelles / magiques dans le nivellement de l’usure. Il y a eu des améliorations incrémentielles alors que nous nous éloignons du SLC coûteux au profit du MLC, du TLC et même du QLC, ainsi que de tailles de processus plus petites (qui sont toutes moins coûteuses avec un risque plus élevé d’usure). Flash est devenu beaucoup moins cher.

Il y avait aussi quelques alternatives qui n’avaient pas de problèmes d’usure. Par exemple, exécuter l’ensemble du système à partir d’une ROM (qui est sans doute un stockage à l’état solide) et d’une RAM sauvegardée par batterie, que de nombreux premiers SSD et appareils portables comme le Palm Pilot utilisaient. Aucun de ceux-ci n’est courant aujourd’hui. Les disques durs ont basculé par rapport à, par exemple, la RAM sauvegardée par batterie (trop chère), les premiers périphériques à semi-conducteurs (un peu coûteux) paysans avec des drapeaux (jamais pris en compte en raison de la terrible densité de données). Même la mémoire flash moderne est un descendant des eeproms à effacement rapide et les eeproms ont été utilisés dans les appareils électroniques pour le stockage de choses comme le micrologiciel depuis des lustres.

Les disques durs se trouvaient simplement à une belle intersection entre un volume élevé (ce qui est important), un faible coût et un stockage relativement suffisant.

La raison pour laquelle vous trouvez des eMMC dans les ordinateurs bas de gamme modernes est que les composants sont relativement bon marché, suffisamment volumineux (pour les systèmes d’exploitation de bureau) à ce prix et partagent des points communs avec les composants de téléphonie mobile, de sorte qu’ils sont produits en vrac avec une interface standard. Ils offrent également une grande densité de stockage pour leur volume. Étant donné que bon nombre de ces machines ont un lecteur dérisoire de 32 Go ou 64 Go, à égalité avec les disques durs d’il y a dix ans, ils constituent une option judicieuse dans ce rôle.

Nous arrivons enfin au point où vous pouvez stocker une quantité raisonnable de mémoire à un prix abordable et à des vitesses raisonnables sur les eMMC et le flash, c’est pourquoi les gens optent pour eux.

Avez-vous quelque chose à ajouter à l’explication? Sonnez dans les commentaires. Vous voulez lire plus de réponses d’autres utilisateurs de Stack Exchange férus de technologie? Consultez le fil de discussion complet ici.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Comment Android «P» empêchera les applications de vous espionner

Comment Android «P» empêchera les applications de vous espionner

Pourquoi vous ne devriez pas acheter des batteries tierces bon marché pour les ordinateurs portables ou les smartphones

Pourquoi vous ne devriez pas acheter des batteries tierces bon marché pour les ordinateurs portables ou les smartphones