Chi è a conoscenza del comando “TRIM”?

Per i “veterani” della programmazione, Trim (che significa “tagliare”) è un comando utilizzato per eliminare gli spazzi vuoti in una variabile di testo, ad esempio se in una variabile text abbiamo ” ciao come stai “, dopo il comando Trim nella variabile avremo “ciao come stai”, senza gli spazzi all’inizio e alla fine della frase.

Ma oggi non parliamo di questo tipo di funzione, infatti anche se il comando porta lo stesso nome, ha tutt’altro utilizzo.

Il comando TRIM a cui ci riferiamo oggi, è stato ideato e progettato per mantenere le prestazioni degli SSD ad un livello ottimale per tutta la durata del disco.

(Per coloro che non hanno ben chiaro come funzionano gli SSD ovvero come gestiscono i dati, come li memorizzano e la loro durata, consiglio di non perdersi il prossimo articolo sulle specifiche di funzionamento di questi supporti.)

Partiamo da un concetto fondamentale:

un blocco di memoria di un SSD deve essere cancellato prima di poter essere ri-programmato e quindi scriverci le nuove informazioni.

Questo concetto, che verrà specificato nell’apposito articolo tecnico, è alla base del funzionamento dei supporti SSD, e che ne determina la velocità, l’affidabilità e la durata nel tempo.

Proprio sulla velocità, tralasciando la durata, le case di sviluppo dei S.O., si sono concentrati “partorendo” il comando TRIM.

Questo comando permette al sistema operativo di informare l’unità SSD, sui blocchi di dati che non sono più considerati in uso e su quelli che possono essere recuperati internamente dal SSD. Con questa operazione e’ possibile assicurare che  le operazioni di scrittura vengano eseguite a piena velocità.

TRIM  quindi migliora la performance in modo proattivo liberando preventivamente i blocchi che contengono  i dati non validi (cancellati), consentendo cosi alla SSD di scrivere nuovi dati senza prima dover eseguire  il comando di cancellazione.

Il comando TRIM, se non si “tocca nulla” è gestito dal S.O. e viene “lanciato” in background, ovvero senza che qualcuno lo avvii manualmente e secondo le regole del S.O..

Se disabilitato il comando TRIM, si nota subito il degrado delle prestazioni nella scrittura.

Per verificare che il TRIM sia attivo procedere nel seguente modo:

  • Apri il Prompt dei comandi come Amministratore, start>esegui>cmd.
  • Digita il comando fsutil behavior query DisableDeleteNotify.

Se ricevi come risposta 0 significa che il TRIM è correttamente abilitato.

Se ricevi come risposta 1 il TRIM è disabilitato, quindi, digita sul Prompt dei comandi il seguente comando per attivarlo:

fsutil behavior set disablenotify 0


La domanda che dobbiamo porci è:

Posso perdere definitivamente i dati cancellati per sbaglio anche dopo poche ore, su un supporto SSD?

La risposta è SI !!!

Ebbene, molto spesso, le case di produzione degli Storage e dei S.O., nel migliorare le performance e la capienza, progettano soluzioni e sistemi senza considerare le possibilità di un recupero dei dati a seguito di perdita degli stessi per errori o eventi accidentali.

Nel caso del comando TRIM, ad esempio, le celle che contengono i dati cancellati, vengono “liberate” definitivamente per predisporle alla successiva ri-programmazione con nuovi dati, rendendo, di fatto, il recupero delle vecchie informazioni impossibile.

Ma quando viene “lanciato” il comando TRIM dal S.O. ?

Non lo sappiamo, per questo motivo, se il comando TRIM viene eseguito dal S.O. subito dopo una cancellazione accidentale, anche senza aver effettuato nessuna altra operazione di sovrascrittura, il recupero software sarà impossibile.

Il comando TRIM può essere disabilitato con dei software, pena il rallentamento delle prestazioni e una possibilità in più di recuperare i dati se cancellati accidentalmente.

A voi la scelta !!!