HDD (disque dur) : des plateaux magnétiques qui tournent, une tête lit/écrit des bits alignés sur des pistes.
SSD : de la mémoire flash (NAND) organisée en pages et blocs, pilotée par un contrôleur qui répartit les données sur les différents blocs.
ça retire de l’index le raccourci de la photo, la photo reste sur le disque.
Suppression
Le système de fichiers retire l’entrée du répertoire (le nom, l’emplacement).
Marquage en “libre”
Les secteurs où était le fichier sont marqués disponibles.
Données encore présentes
Les bits restent aimantés sur le plateau tant qu’on n’écrit pas par-dessus.
Récupération possible
Même si ça peut être un peu fragmenté, un logiciel spécialisé peut encore parcourir le disque et reconstruire le contenu à partir des anciens secteurs, tant qu’ils n’ont pas été réécrits.
Arrêter d’utiliser le disque tout de suite, chaque nouvelle installation, mise à jour peut écraser des fragments récupérables.
Un SSD est organisé en plusieurs niveaux :
Cellule → le plus petit élément, qui stocke 1, 2, 3 ou 4 bits (SLC, MLC, TLC, QLC).
Page → un regroupement de plusieurs milliers de cellules.
Exemple courant : une page fait 16 Ko, ce qui correspond à des milliers de cellules alignées.
Bloc → un ensemble de pages (souvent 128 à 512 pages).
Exemple : si une page = 16 Ko et un bloc = 256 pages → 1 bloc = 4 Mo.
Die → une puce NAND composée de milliers de blocs.
SSD → plusieurs dies et un contrôleur .
Un SSD repose sur des cellules de mémoire flash NAND, chacune supportant un nombre limité de cycles d’écriture et d’effacement.
Ce nombre varie selon la technologie utilisée :
SLC: environ 100 000 cycles
MLC: environ 10 000 cycles
TLC: environ 3 000 cycles
QLC: environ 1 000 cycles
Une lecture ne compte pas comme un cycle. Une écriture + effacement, c’est un cycle.
De nos jour, on utilise de la 3D NAND. Contrairement à la 2D NAND, où les cellules sont disposées à plat sur une seule couche, la 3D NAND les empile verticalement sur plusieurs dizaines à plusieurs centaines de couches
Cette architecture permet d’augmenter la densité, la vitesse et la durée de vie tout en réduisant le coût de fabrication.
Pour répartir l’usure, le SSD utilise une technique appelée wear leveling.
Le contrôleur déplace régulièrement les données afin que toutes les cellules soient sollicitées de manière équilibrée.
Il y a plusieurs milliers de blocs de quelques Mo dans un SSD et dans chaque bloc, il y a plusieurs pages de quelques ko.
Il organise aussi l’écriture de façon à exploiter plusieurs lignes de mémoire en même temps, un peu comme un RAID 0.
Cela permet à la fois de prolonger la durée de vie des puces et d’augmenter les performances en lisant/écrivant sur plusieurs canaux simultanément en parallèle.
Les données ne sont donc pas écrites de manière linéaire, mais réparties sur de nombreux blocs différents.
Par exemple, si l’on copie une photo sur un SSD, elle sera découpée et enregistrée en plusieurs fragments dispersés.
Ainsi, si l’on tente de récupérer ces données sans connaître précisément leur emplacement et l’ordre d’assemblage, on n’obtiendra qu’un ensemble incohérent, une sorte de “bouillie de données”.
Suppression (côté système)
Comme sur HDD, ça retire l’entrée de l’index et ça marque les blocs libres.
TRIM
Le système d’exploitation envoie au contrôleur du SSD une info : « ces adresses logiques ne servent plus ». On perd donc l’information qui permettrait de reconstituer la photo.
Garbage Collection (nettoyage)
À un moment (au repos, en tâche de fond), le contrôleur recopie les pages encore utiles ailleurs dans un autre bloc, puis efface le bloc de mémoire flash pour le remettre à neuf.
Sur un SSD, les données sont stockées dans des pages regroupées en blocs.
Problème : on peut écrire directement dans une page vide, mais on ne peut pas réécrire dans une page déjà remplie.
Et surtout, on ne peut pas effacer une seule page, il faut effacer tout le bloc.
Donc, si un bloc contient des pages pleines mais inutiles (parce que des fichiers ont été supprimés), le contrôleur ne peut pas immédiatement réécrire dessus. Avant d’utiliser cet espace, il doit :
Lire le bloc,
Copier les pages encore utiles ailleurs,
Effacer le bloc entier,
Réécrire les nouvelles données.
Ce cycle (lecture → copie → effacement → écriture) est long et ralentit les performances.
C’est là que la Garbage Collection intervient :
Quand le SSD est au repos ou en tâche de fond, le contrôleur recopie automatiquement les pages encore valides ailleurs.
Puis il efface les blocs devenus inutiles.
Ainsi, quand tu veux écrire de nouvelles données, le SSD a déjà des blocs propres prêts à l’emploi → l’écriture est beaucoup plus rapide.
Répartition & parallélisme
Le contrôleur répartit l’écriture sur plusieurs puces/canaux (vitesse + usure équilibrée). Résultat : un fichier est morcelé un peu partout.
Après TRIM+nettoyage
Même en lisant « en direct » une puce dessoudée, sans la logique du contrôleur, on n’obtient qu’un mélange illisible : des fragments dispersés, souvent déjà effacés par blocs.
Après la TRIM puis effacement par la garbage collection, la récupération devient hautement improbable.
Vous supprimez par erreur un dossier de photos « Vacances » à 18h00.
18h00 : l’entrée du dossier est supprimée, les secteurs passent en « libres », les photos sont encore là physiquement.
18h05 : vous installez un logiciel sur ce même disque et Windows fait des mises à jour → il écrit sur quelques secteurs libres. Peut-être par-dessus vos photos.
19h20 : vous vous rendez compte de l’erreur → vous éteignez le PC et vous me confiez votre PC.
Je retrouve 95 % des images (5 % ont été partiellement écrasées).
Moralité : plus vous attendez et écrivez, plus le taux de réussite baisse.
18h00 : suppression → l’OS envoie TRIM (souvent immédiatement). Les pages deviennent invalides pour le contrôleur.
18h05 : en tâche de fond, la garbage collection passe et efface les blocs contenant ces pages.
Si je lance un outil de récupération → non n’avons plus la carte des emplacements, c’est donc de la bouillie de données et en plus les blocs ont été nettoyés.
Résultat : Pas de récupération, à moins d’un timing très particulier (TRIM désactivé, nettoyage non encore passé, etc.).
C’est pourquoi, sur SSD je propose la récupération de données pour les SSD abimées, mais je ne le fais pas pour les données effacées par erreur.
Les grands laboratoires, tels que Recoveo ne proposent pas cette prestation non plus.
Vous pouvez tout de même peut-être récupérer une partie de vos données dans le cloud, un NAS, les e-mails, sur les PC de vos collègues, de votre famille ou si vous avez activé une securité dans windows tel que Historique des fichiers, ce qui est rarement le cas…
J’ai simplifié pour que ça reste accessible.
On parle par abus de langage de la TRIM, mais sur les SSD NVMe la commande s’appelle Deallocate ou Dataset Management (DMS) : c’est la même chose, mais adaptée au protocole NVMe, plus moderne et capable de gérer plusieurs files de commandes en parallèle pour de meilleures performances.
Si la commande TRIM est désactivée, le SSD ne saura qu’un fichier a été supprimé qu’au moment où le système d’exploitation tentera d’écrire de nouvelles données à cet emplacement, ce qui oblige le contrôleur à effacer les anciennes cellules avant d’écrire et ralentit donc les performances d’écriture.
A l’époque de windows 7, il fallait activer la prise en charge de la TRIM en ligne de commande apres l’instalation d’un SSD. Depuis windows 8 c’est automatique.
Le wear-leveling est une fonction essentielle des SSD qui vise à répartir uniformément l’usure des cellules de mémoire. Elle empêche certaines zones d’être trop sollicitées, ce qui prolonge la durée de vie du SSD.
Il existe deux types de wear-leveling : le dynamique et le statique.
Dynamic wear-leveling :
Ce mode écrit les nouvelles données dans des cellules libres, tout en marquant les anciennes comme invalides. Le contrôleur interdit la lecture de ces cellules, car elles ne contiennent plus de tension exploitable.
Le probleme c’est que les cellules contenant des données rarement modifiées ne sont pas réutilisées, ce qui crée une usure inégale à long terme.
Static wear-leveling :
Il fonctionne comme le dynamique, mais il déplace aussi les données peu modifiées vers des cellules déjà plus usées, afin d’uniformiser l’usure sur l’ensemble du disque.
C’est une zone de mémoire cachée à l’utilisateur, réservée par le contrôleur.
Elle n’apparaît pas dans la capacité visible du disque.
Elle sert à remplacer les blocs défectueux détectés (un peu comme les secteurs de réserve d’un HDD) ou les bloc fatiguées.
Quand un bloc devient instable ou inutilisable, le contrôleur le met dans une table de blocs défectueux (Bad Block Management).
Ensuite, il prend un bloc de la zone d’over-provisioning pour le remplacer.
Résultat : l’utilisateur ne voit pas de perte de capacité, et le SSD continue à fonctionner normalement.
Sur HDD → on parle de secteurs de rechange (spare sectors).
Sur SSD → on parle plutôt de blocs de réserve via l’over-provisioning.
Certains SSD grand public ont environ 7 % d’over-provisioning caché, mais les modèles pros peuvent en avoir 20 % ou plus pour mieux gérer l’usure.
Cache SLC (le plus courant)
Même si ton SSD est en TLC ou QLC, une petite partie est utilisée comme si c’était de la SLC (1 bit par cellule).
Résultat : les écritures vont super vite au début.
Mais si tu dépasses lors d’une copie, la taille du cache, ça ralentit fortement. Pour palier se probleme, il faut utiliser des SSD pro.
DRAM (mémoire vive intégrée dans le SSD)
Présente sur les SSD de milieu et haut de gamme
HMB (Host Memory Buffer)
Sur certains SSD NVMe pas chers qui n’ont pas de DRAM.
Le SSD “emprunte” un petit bout de la RAM de ton PC.
Moins rapide qu’une vraie DRAM, mais ça dépanne.
C’est le plus répandu :
SSD SATA (TLC/QLC) : souvent 5 à 20 Go en SLC.
SSD NVMe grand public :
250 Go → cache SLC ≈ 10 à 15 Go
500 Go → cache SLC ≈ 15 à 30 Go
1 To → cache SLC ≈ 30 à 60 Go
2 To → cache SLC ≈ 60 à 120 Go
C’est souvent dynamique → si le SSD est vide, le cache peut s’étendre (par ex. 100 Go). Si le SSD est plein, il se réduit (par ex. 10 Go).
Avec du TLC ou du QLC, c’est plus lent.
Quand il faut écrire 3 ou 4 bits par cellule, la tension doit être ajustée très précisément :
Plusieurs micro-impulsions par cellule, ce qui donne la valeur, c’est le niveau de charge.
Lecture de vérification après chaque impulsion pour ajuster la tension,
Gestion ECC plus lourde (erreur + recalibrage).
Pendant ce temps :
Le canal est bloqué jusqu’à ce que la cellule atteigne le bon niveau,
Donc les autres opérations attendent.
Moins de parallélisme effectif, car les cellules prennent plus de temps individuellement.
Une cellule, c’est une “mini case” qui stocke une charge électrique
Une cellule NAND flash, c’est littéralement une toute petite zone de silicium capable de retenir des électrons dans un composant appelé transistor à grille flottante (floating-gate transistor).
Chaque cellule est donc un transistor modifié, dont la charge électrique représente une donnée.
Écrire :
On applique une tension pour injecter des électrons dans la grille flottante.
→ Plus la cellule est chargée, plus la tension de seuil (pour la lire) augmente.
Lire :
On envoie une tension de test.
→ Si le courant passe → 0
→ Si le courant ne passe pas → 1
(dans le cas du SLC)
Type | Bits stockés | Niveaux de charge à gérer | Exemple de seuils de tension |
---|---|---|---|
SLC | 1 bit | 2 niveaux | 0 (vide) ou 1 (chargé) |
MLC | 2 bits | 4 niveaux | 00, 01, 10, 11 |
TLC | 3 bits | 8 niveaux | 000 à 111 |
QLC | 4 bits | 16 niveaux | encore plus précis |
Chaque cellule NAND est un petit interrupteur électronique commandé (un transistor).
Pour que le courant passe, il faut appliquer une certaine tension sur la grille de contrôle.
La cellule peut stocker des électrons dans une grille flottante isolée.
Ces électrons modifient la tension nécessaire pour allumer le transistor.
C’est ça qu’on appelle la tension de seuil (threshold voltage).
Exemple
Imagine que tu as une porte avec un ressort :
Sans rien dessus → elle s’ouvre facilement.
Si tu poses un poids dessus → il faut pousser plus fort pour l’ouvrir.
Ici :
Le ressort, c’est la cellule NAND.
Le poids, ce sont les électrons qu’on a injectés dedans.
Et la force pour ouvrir, c’est la tension de seuil.
Plus tu as mis d’électrons (plus de charge), plus il faut de tension pour “ouvrir” le transistor.
Le contrôleur mesure cette tension → et en déduit le bit stocké (0 ou 1, ou plus selon le type de NAND).
Quand tu stockes plusieurs bits par cellule, tu ne peux plus te contenter de 2 niveaux (basse/haute tension).
Il faut plus de niveaux intermédiaires selon la quantité d’électrons :
Chaque niveau correspond à une combinaison de bits différente :
En MLC : 00, 01, 10, 11
En TLC : 000 à 111
Donc le contrôleur doit mesurer très précisément la tension de seuil pour savoir quel état correspond.
Et cette précision :
ralentit la lecture/écriture,
augmente les risques d’erreur,
réduit la durée de vie (car les cellules s’usent plus vite).
Le contrôleur d’un SSD, c’est un peu le “cerveau” du disque.
C’est lui qui gère tout ce qui se passe entre ton ordinateur et les puces NAND.
Traduit les commandes de l’ordinateur
Quand ton OS dit “écris ce fichier à tel secteur logique”, le contrôleur traduit ça en “écris dans telle cellule, de telle page, de tel bloc”.
Comme la NAND ne peut pas être adressée directement comme un disque dur, il gère une grosse table appelée FTL (Flash Translation Layer) dans sa propre puce.
Gère le cache
Utilise le cache DRAM ou HMB pour accélérer les lectures/écritures.
Utilise le cache SLC pour booster les écritures rapides.
Wear leveling (répartition de l’usure)
Évite que certaines cellules soient usées plus vite que d’autres.
Répartit les écritures de façon uniforme sur toutes les puces.
Garbage Collection
Récupère les blocs devenus inutiles (après un TRIM).
Déplace les données valides, efface les blocs sales, et prépare des blocs propres pour les prochaines écritures.
Correction d’erreurs (ECC)
Vérifie que les données lues sont correctes.
Si une cellule a “fuité” ou a du bruit électrique, il corrige l’erreur grâce à des codes (BCH, LDPC).
Gestion des blocs défectueux
Surveille la santé des cellules.
Si un bloc devient instable, il le remplace par un bloc de réserve (over-provisioning).
Sécurité et chiffrement (sur certains SSD)
Peut chiffrer/déchiffrer les données à la volée (AES 256, TCG Opal, etc.).
Communication parallèle
Gère l’écriture/lecture en parallèle sur plusieurs canaux → c’est ce qui donne la vitesse bien plus élevée que les HDD.
En simplifiant:
Tu veux stocker 101100
.
Avec ECC, le SSD ajoute un petit code comme 101100 + 011
.
Quand tu relis, si une cellule a bougé (101000
au lieu de 101100
), le contrôleur compare avec 011
→ il voit l’erreur → il fait un petit calcule et il la corrige → et tu récupères 101100
.
Quand tu fais un formatage rapide, en réalité on n’efface pas les données physiquement.
Le système se contente de :
Supprimer la table d’allocation (la « carte » qui indique où sont les fichiers).
Marquer les secteurs/blocs comme « libres » pour réécriture.
Conséquence : les données sont encore présentes sur le disque tant qu’elles ne sont pas réécrites.
C’est pourquoi on peut encore récupérer des données après un formatage rapide.
Le formatage bas niveau est très différent.
À l’origine (dans les années 80-90), il consistait à :
Redéfinir physiquement la structure du disque : pistes, secteurs, zones magnétiques.
Effacer complètement tout le disque en écrivant des zéros (ou un motif) sur chaque secteur.
Aujourd’hui, sur les disques modernes, le vrai formatage bas niveau n’est plus faisable par l’utilisateur : il est fait en usine par le fabricant.
Quand on parle de « bas niveau » de nos jours, on fait plutôt référence à un effacement complet (écrire des zéros ou réinitialiser chaque secteur).
Ça prend beaucoup de temps, mais ça supprime réellement les données.
Avec un SSD, c’est différent à cause de la mémoire flash et de la gestion par le contrôleur (TRIM, wear leveling, garbage collection) :
Formatage rapide :
Comme sur un HDD, on supprime juste la table d’indexation. Les cellules contenant les données ne sont pas immédiatement effacées.
Cependant, avec la commande TRIM, le système d’exploitation dit au SSD : « ces blocs sont libres ».
Le SSD peut donc effacer en arrière-plan (garbage collection), ce qui rend la récupération beaucoup plus difficile qu’avec un HDD.
Formatage bas niveau :
Ce n’est pas possible de le faire comme sur un disque dur.
Le contrôleur du SSD ne permet pas d’écrire directement piste par piste.
À la place, on utilise des commandes spéciales comme ATA Secure Erase ou les utilitaires du fabricant.
Cela envoie une instruction au contrôleur pour remettre toutes les cellules à l’état vierge (effacées), comme en sortie d’usine.
C’est l’équivalent moderne du formatage bas niveau pour SSD.
On appelle ça effacement militaire ou effacement sécurisé (souvent basé sur des standards comme DoD 5220.22-M).
Le principe : réécrire plusieurs fois les secteurs/blocs avec des motifs différents (zéros, uns, aléatoires).
L’idée était de rendre la récupération impossible même par des laboratoires spécialisés.
Ce besoin vient de l’époque des vieux disques durs (années 90), quand la densité magnétique était faible. Une réécriture pouvait laisser des “fantômes magnétiques” qu’on craignait exploitables avec du matériel très avancé.
Aujourd’hui, les disques durs modernes ont une densité d’écriture extrêmement élevée.
Lorsqu’un secteur est réécrit (par exemple avec des zéros), le signal magnétique est totalement saturé et aucune trace exploitable n’existe.
Résultat : un seul passage suffit pour rendre les données irrécupérables.
Aucun laboratoire au monde n’a jamais réussi à récupérer des données après un formatage bas niveau .
Les SSD ne fonctionnent pas par magnétisme mais par mémoire flash.
Ici, un Secure Erase remet toutes les cellules à l’état vierge, comme en sortie d’usine.
Là encore, une fois cette opération faite, les données sont définitivement perdues, et aucun labo n’a trouvé de moyen de les restaurer.
C’est devenu surtout une sécurité supplémentaire “au cas où” :
Si un jour une technologie de récupération révolutionnaire apparaissait, les passes multiples réduiraient encore plus les risques.
En pratique, c’est surtout un gage de sérieux pour rassurer les entreprises, administrations ou militaires.
La récupération de données sur une clé USB est possible tant que les fichiers effacés n’ont pas été écrasés. ça utilise aussi de la mémoire NAND comme un SSD, mais sans gestion de la commande TRIM ni d’autres mécanismes d’effacement automatique.
Elle se produit quand un fichier, comme une photo ou une vidéo, est découpé en plusieurs morceaux enregistrés à différents endroits du plateau magnétique. Lorsqu’on supprime un fichier, cela crée un espace vide (un “trou”) que le système considère comme disponible. Mais si un nouveau fichier est plus grand que ce trou, il va écrire une partie dedans et le reste plus loin, là où il trouve de la place. C’est ainsi que la fragmentation s’aggrave naturellement.
Ce phénomène ne détériore pas le disque, mais il ralentit les accès car la tête de lecture doit se déplacer plusieurs fois pour reconstituer un même fichier.
Un disque dur, c’est un peu comme un disque vinyle lu par une platine : les données, comme les sillons d’un vinyle, sont magnetiquement gravées sur la surface, et la tête de lecture se déplace pour aller les lire ou les modifier.
La défragmentation sert à rassembler tous les fragments d’un fichier pour les remettre côte à côte, ce qui réduit les déplacements mécaniques et améliore les performances. Depuis Windows 7, elle est automatique chaque semaine, alors qu’avant il fallait la lancer manuellement.
Les disques durs écrivent en priorité les données vers l’extérieur du plateau, car la vitesse linéaire y est plus élevée (7200 tours par minutes ou 5400 voir 10 000 sur les games pro) : les pistes externes contiennent plus de secteurs par tour, donc plus de données lues à chaque rotation. C’est pourquoi le système place souvent les fichiers système et les plus utilisés en début de disque, correspondant à la zone externe, pour maximiser la vitesse de lecture et d’écriture. Il peut y avoir plusieurs plateaux dans un disque dur, chacun possédant sa propre tête de lecture et d’écriture.
Un logiciel de récupération de données est capable de rassembler les fragments d’un fichier, mais seulement tant que les zones du disque n’ont pas été réécrites.
Il s’appuie sur les informations du système de fichiers (comme la table MFT en NTFS ou la FAT) pour retrouver l’emplacement de chaque fragment.
Quand ces informations sont perdues ou endommagées, le logiciel analyse le disque secteur par secteur pour reconstruire les morceaux à partir de leur signature (par exemple, les en-têtes typiques des fichiers JPG, MP4, DOCX, etc.).
La fonction anti-chute d’un disque dur sert à protéger les plateaux magnétiques et la tête de lecture en cas de choc ou de chute.
Le disque contient un accéléromètre qui détecte toute accélération anormale ou perte de gravité. Dès qu’il perçoit qu’un mouvement de chute commence, il replie en une fraction de seconde la tête de lecture vers une zone de sécurité appelée parking zone.
Cette précaution est cruciale, car la tête de lecture flotte à seulement quelques nanomètres au-dessus du plateau, sur un mince coussin d’air.
Si elle touche le disque pendant une chute, cela provoque un contact physique brutal, une rayure sur la surface magnétique, pouvant détruire définitivement des données.
Grâce à ce système, les disques durs portables peuvent survivre à de petits chocs sans perte d’informations.
En général, si la tête de lecture touche le plateau, elle se casse instantanément.
Pour la remplacer, il faut ouvrir le disque dur dans un environnement totalement exempt de poussière, car la moindre particule, même microscopique, est légèrement magnétique et peut endommager ou démagnétiser les clusters où sont stockées les données. ça fausse la lecture.
Quand on regarde un rayon de soleil traverser une fenêtre, on voit flotter des milliers de particules de poussière dans l’air : ces mêmes particules, invisibles en temps normal, suffiraient à rendre un disque dur inutilisable si elles se déposaient sur les plateaux.
Le remplacement d’une tête de lecture doit se faire dans une salle blanche, avec une tête strictement identique, issue d’un disque donneur du même modèle et de la même révision.
Visitez mon article sur upgrade de PC gamer:
https://microgitech.fr/upgrader-son-pc-pour-passer-a-la-next-gen/
.
.
.