Récupération de données sur SmartMedia, CompactFlash & Memory Stick

(c) DataRescue Inc, 2001-2003

La récupération de données sur des cartes Smartmedia, CompactFlash et Memory Stick est essentiellement un travail normal de récupération de données. Dans cet article, nous examinerons les structures de données de bases concernées, comment elles deviennent corrompues et ce qu'on peut faire pour récupérer les données. Notre but n'est pas ici de fournir une encyclopédie sur le sujet, mais plutôt quelques informations essentielles et correctes. Nous sommes les développeurs de Photorescue, le logiciel de récupération de données le plus performant du marché. A ce titre, nous avons une expérience étendue des problèmes que peuvent subir ces cartes mémoires.

Qu'est-ce qui casse?

Les disques durs brûlent parfois leur électronique, écrasent leurs têtes de lecture, perdent leur structure à cause d'une activation rivale. Mais que peut-il bien arriver à ces médias qui ne contiennent aucunes parties mobiles?

Dans l'appareil...

Les appareils photo numériques contiennent en fait un système d'exploitation complet qui supporte des opérations d'entrée-sortie classiques sur un système de fichier de type FAT. Mais, en raison de la capacité mémoire limitée des premiers appareils (et peut-être aussi en raison de l'inexpérience des développeurs de ces systèmes, l'implémentation de ces routines d'accès fichier n'est pas très solide. Il n'est pas rare de voir des appareils digitaux se mordre la queue en écrivant sur des cartes mémoires pleines. En effet, si un appareil ne se rend pas compte qu'il a atteint la fin de la carte, il continue d'écrire et commence à écraser les structures systèmes essentielles qui occupent le début du média. Certains appareils peuvent même planter quand ils rencontrent des structures différentes de ce qu'ils attendent. C'est le cas, par exemple, pour certains appareils quand des répertoires normaux, ne contenant aucune photographies, se trouvent sur la carte. D'autres sont incapables de passer sans encombre de la FAT-12 à la FAT-16. Parfois, une corruption mineure a des conséquences majeures quand, par effet d'avalanche, elle entraine l'écriture erronée des structures ultérieures.

Dans les lecteurs de carte...

Les lecteurs de cartes s'interfacent en général avec le système d'exploitation de votre PC par l'intermédiaire de "pilotes" qui font par exemple la liaison entre le gestionnaire de fichier du système d'exploitation et l'appareil de type "USB Mass Storage". La qualité de ces pilotes varie. Bien que certains d'entre eux ne soient pas capables de répondre correctement à tous les appels systèmes, la plupart des problèmes, bien que ces lecteurs souffrent d'une réputation déplorable, il n'en reste pas moins que la grande majorité des problèmes que l'utilisateur rencontre trouve sa source dans l'appareil numérique ou dans la manière dont le système d'exploitation gère sa cache en écriture ou son formatage. Il arrive même que le système d'exploitation primitif de l'appareil digital ne puisse gérer complètement les conséquences d'un effacement: dans ce cas, placer la carte dans un lecteur USB peut suffire à récupérer les photos.

Particularités

Les médias à base de NAND - Flash utilisent un algorithme complexe de virtualisation de secteurs appelé "wear leveling algorithm" dans le but de distribuer l'usure de façon homogène sur les cellules mémoires et afin de maximiser la vie de la carte mémoire. Après avoir analysé des centaines de cartes corrompues, nous avons pu déterminer que cet algorithme pouvait parfois jouer un rôle essentiel dans la perte de données. Un autre paramètre à garder à l'esprit est la soudaineté des défaillances de cartes flash. Quand un problème physique commence à se manifester, la défaillance totale est proche. Faites vite une copie de sauvegarde.

 

Et dans la vie ?

Les cartes tombent à l'eau, cuisent au soleil du désert, s'usent et sont maltraitées. Cela peut conduire à des pannes matérielles ou logicielles de tour type. Examinons maintenant un peu plus en détail les structures qui peuvent être corrompues.

L'organisation de la carte et de ses structures de données.

Les détails d''implémentation varient légèrement de vendeur à vendeur, et aussi selon le type de média. Les cartes SmartMedia, par exemple, utilisent la FAT-12 (jusqu'à 64MB) la FAT-16 (au-delà de 64MB). La plupart des CompactFlash sont utilisées en FAT-16, mais s'accomodent aussi de FAT-12 dans leurs petites capacités. Dans le future, dès que la capacité des cartes dépassera 2 GB, elles utiliseront probablement aussi la FAT-32. Formatter aujourd'hui une carte smartmedia en FAT-32, c'est courir aux ennuis et à la carte non reconnue. Attention: FAT-32 est le format utilisé par défaut par Windows XP

The Card Information System (CIS)

La zone CIS est une zone cachée, située en dehors de la zone logique ou physique émulée de la carte. Cette zone contient des informations à propos du fabricant de la carte, beaucoup des caractéristiques de bas niveau de la carte. Elle est aussi parfois utilisée pour dissimuler des capacités avancées telle que la fonction panorama des appareils digitaux Olympus. Dans ce document, nous ne traiterons pas de la CIS

Le MBR

Dans le cas des disques durs, ce secteur contient le code de démarrage du système, responsable de la sélection de la partition active et du chargement de son boot secteur. Il contient aussi une structure de données appelée "Table de Partition" qui contient la définition des partitions du disque dur. Dans le cas des cartes mémoires, le secteur est présent essentiellement pour des raisons de compatibilité puisque ces mémoires de masses sont rarement utilisées pour démarrer des systèmes d'exploitation (aujourd'hui!). Quan ce secteur est corrompu, le média n'est plus visible comme lecteur logique, aucune lettre ne lui est assignée. Pour accéder à une telle carte, le mode physique est nécessaire. A droite, un MBR typique.


<click to enlarge>


<click to enlarge>

Le secteur de démarrage

est utilisé avec le MBR pour définir la géométrie de la carte. Sa corruption peut conduire à différent messages d'erreur, annonçant par exemple que le média n'est pas formaté ou qu'il est illisible. Noter que cette carte de 64MB utilise la FAT-12. Noter également que chaque unité d'allocation contient 32 secteurs (ou 16 kilobytes)

La FAT

est une liste liée décrivant la séquence des unités d'allocation utilisées par les fichiers. Sa corruption peut conduire à des problèmes divers: des fichiers sont parfois illisibles, parfois corrompus, dans d'autres cas, des "seek errors" peuvent survenir, etc.... Les appareils numériques sont particulièrement sensibles à ces erreurs. Un problème mineur peut pousser la caméra à ignorer les données normales qui suivent, ou simplement à ne plus reconnaitre la carte ou à crasher. Il y a en général deux copies de la FAT par média (voyez la capture d'écran à droite). La FAT-12 décrite ici contient 7 fichiers.

le 056000 signifie unités d'allocations 05 et 06
le 078000 signifie unités d'allocations 07 et 08
le 09A000 signifie unités d'allocations 09 et A0 ( 10 en hexadécimal)
...
FFF signifie terminaison de chaine, ou encore dernière unité d'allocation dans la séquence.

Le fichier 5, par exemple, commence au cluster 92 (5D en hexadecimal)

La FAT-12 peut adresser au maximum 4096 unités d'allocation, ( en pratique, un peu moins car la numérotation ne commence pas à 0). 4095 fois 16 kb donne 64 MB.


<click to enlarge>

<click to enlarge>

Le répertoire racine

Si le répertoire racine est corrompu ou si le secteur de démarrage pointe vers un mauvais répertoire racine, les fichiers et les sous-répertoires qu'il contient peuvent être perdus. En général, les photos ne sont pas stockées dans le répertoire racine parce que celui ci est d'une taille limitée: il ne peut contenir qu'un nombre limité de fichiers ( 256-2 entrées dans ce cas).L'exemple ci-contre montre un sous-répertoire qui ne contient qu'une entrée: un pointeur vers un sous-répertoire que l'appareil numérique utilise pour sauvegarder les photos. Le symptôme typique d'un répertoire racine qui pointe vers un mauvais endroit est la présence de fichiers aux noms étranges et de tailles gigantesques.

Les sous-répertoires

contiennent les descripteurs de fichier. La corruption de ces entrées peut conduire à la lecture d'un contenu de fichier erroné. Cette situation se présente fréquemment après que certains logiciels de récupération de données se soient plantés. CHKDSK, par exemple, ré-écrit une structure consistante et techniquement correcte mais qui pointe fréquemment vers les mauvaises untiés d'allocation. Ce répertoire contient 7 fichiers.


<click to enlarge>

La zone de données

contient les données qui constituent le fichier. Dans la plupart des cas, ces données restent sur la carte même après que le fichier ait été effacé. C'est pour cette raison qu'il est souvent possible de déseffacer ou de récupérer des cartes après formatage. Voici le contenu du cinquième fichier, il peut être identifié par son en-tête exif.

     
Les copies d'écrans de cette page ont été réalisées avec Winhex
Coming next : data preservation tips.    


[Go Back to DataRescue Home Page ] DataRescue 45 quai de la Dérivation 4020 Liège (Belgium) tel 32-4-3446510 fax 32-4-3446514 Please send us your questions or comments.