DOMANDA SMART di un SSD e di un HDD

Iscritto dal
10 Maggio 2020
Messaggi
37
#1
Buongiorno a tutti, ho deciso di aprire questa discussione, perchè guardando lo SMART di un SSD e di un HDD mi son sempre chiesto... cosa sono i settori riallocati di un HDD e di un SSD? Volevo anche chiedere in generale, che valori si deve guardare nello S.M.A.R.T. dell’SSD, nel senso, per esempio, nello S.M.A.R.T. di un HDD, principalmente si monitorano, i settori riallocati, errori G-Sense, errori lettura, settori pendenti e settori incorreggibili, ecco, per l’SSD cosa? Potete dirmi cosa sono anche? Grazie mille in anticipo
@Liupen
 
Ultima modifica:

Liupen

SSD MAN
STAFF
Iscritto dal
30 Ottobre 2018
Messaggi
762
#2
Buongiorno a te.

Parliamo innanzitutto dei settori riallocati su hdd e su ssd.

Gli attributi SMART a cui si riferiscono sono https://en.wikipedia.org/wiki/S.M.A.R.T.
# 196 0xC4 Conteggio eventi di riallocazione
# 05 0x05 Conteggio settori riallocati

Il primo segnala il numero di volte che il firmware (l'insieme degli algoritmi di funzionamento del dispositivo, conservati in una ROM) applica la riallocazione.
Il secondo indica la quantità di blocchi che sono stati oggetti di riallocazione.

riallocazione - [rial-lo-ca-zió-ne] n.f. - diversa ripartizione o assegnazione di risorse economiche, umane, finanziarie ecc.

Prima di questo, in estrema sintesi le basi: il sistema operativo è una astrazione software ma i dati che gli chiediamo di memorizzare in un HDD o SSD (o pendrive, sd, ecc) sono dati reali; quindi ogni sistema operativo crea una mappa della memoria che ha a disposizione sia volatile che non (storage) senza dimenticare che buona parte di essa rimane a livello astratto e diventa fisica solo quando necessario (https://en.wikipedia.org/wiki/Virtual_memory )
Prendendo a prestito le parole di Wiki:

"Il sistema operativo del computer , utilizzando una combinazione di hardware e software, mappa gli indirizzi di memoria utilizzati da un programma, chiamati indirizzi virtuali , in indirizzi fisici nella memoria del computer"​

Ciò significa che un HDD o un SSD è costituito da blocchi reali cui il sistema operativo fà corrispondere dei blocchi logici in una tabella che risiede nel dispositivo stesso.
Se un sistema operativo vuol richiamare il dato A, andrà a consultare questa mappa di conversione o "indice" che gli dirà il corrispondente blocco reale di A su disco.

Capendo questo meccanismo, il concetto di blocco riallocato è semplicissimo.


Quando un HDD o un SSD è in funzione, specie se ha sopra il sistema operativo, sappiamo tutti che scrive; poco o tanto ma scrive in continuazione per eseguire gli algoritmi di manutenzione e controllo con cui è programmato o per aggiornare l'indice delle corrispondenze sopra descritte.
Se capita un blocco che non può essere letto perchè danneggiato, dopo essere intervenuto un algoritmo chiamato ECC e che si occupa di ricostruire il dato affinchè non venga perduto, il firmware del device segnalerà il problema. Nello smart si potrà vedere riportato un errore di lettura, errore di scrittura oppure, se il firmware in quel momento è occupato, segnalerà il famigerato:
#197 0xC5 errore di scrittura pendente
questo errore evidenzia che uno o più blocchi del dispositivo contengono informazioni che non è stato possibile leggere e che questi settori sono in attesa di una rimappatura (ora sappiamo che la "mappatura" è l'indice delle corrispondenze tra blocchi logici e fisici).

Come si può immaginare gli errori possono essere diversi, sia irreversibili che non, ma quando il firmware, solitamente in un momento di pausa del dispositivo (idle), interviene analizzando i blocchi (eseguendo una scrittura e una lettura con check negativo), stabilendo che il blocco non è più buono, sostituirà quel/quei blocchi con altri blocchi fisici messi da parte proprio per questo, ricreando un nuovo indice (o mappa).

Un evento di riallocazione, dunque porta proprio alla sostituzione di uno o più blocchi bad con uno o più di "spare" (sostitutivi) e alla creazione della nuova tabella su device.

Se questo avviene, ed avviene correttamente, il device, pur risultando dallo smart in errore, teoricamente può continuare a lavorare ottimamente.
Purtroppo sono rari i settori cattivi isolati se a causarli sono guasti fisici, quindi ecco che, il comparire della riallocazione, funge da allarme per un backup e cambio HDD o SSD il più in fretta possibile.

Volevo anche chiedere in generale, che valori si deve guardare nello S.M.A.R.T. dell’SSD, nel senso, per esempio, nello S.M.A.R.T. di un HDD, principalmente si monitorano, i settori riallocati, errori G-Sense, errori lettura, settori pendenti e settori incorreggibili, ecco, per l’SSD cosa?
Esatto, ma anche la temperatura e le ore di scrittura. Non dimenticarti che gli hdd sono meccanici, quindi più ore hanno, più sono soggetti a rotture.
Importanti (e frequenti) sono anche gli errori CRC, cioè quelli dovuti all'interfaccia (e per cui il cavetto sata è sempre il principale indiziato).

Gli errori G-Sense sono errori di ricalibrazione del braccetto che non trova il solco giusto (perchè interviene una forza laterale che lo sposta...vedi vibrazione, o colpo).
Gli errori di lettura o di scrittura sono termini generici, spesso hanno un carattere irreversibile ma senza un analisi di un centro che utilizza software, non si può capire se permangono o sono bypassati. Ad esempio, un errore di lettura segnalato, può essere dall'ECC "corretto". Un errore di scrittura può essere evidenziato dal controllo del dato che segue ed il blocco può essere saltato ma non corretto. Tutti queste variabili possono essere viste in laboratorio.
I settori pendenti, come detto sono blocchi con dati sopra o su cui non è stato possibile scrivere (solitamente la prima) e che necessitano di rimappatura per escluderli dai settori buoni. Se il dato che non si riesce a leggere fa parte dei file di funzionamento del sistema operativo, può portare ad un blocco di sistema, e comunque può essere la causa di rallentamenti o di blocchi.

Per gli SSD, nello SMART, valgono sempre e comunque gli errori di qualsiasi genere (CRC o riallocazione compresi). Solo che i segnali SMART di rottura di un SSD sono rari, spesso succede che da un momento all'altro un SSD risulta non accessibile con buona pace della funzione predittiva dello SMART :-(
 
Iscritto dal
10 Maggio 2020
Messaggi
37
#3
Quindi, se ho capito bene, avere per esempio un settore riallocato significa che si è presentato un errori di lettura/scrittura sul settore, questo settore dovrebbe esser danneggiato e il firmware lo “mette” in disparte (bad) e non viene più utilizzato (ma vengono utilizzati quelli buoni). Eh quindi avere un settori riallocato per esempio, vuol dire l’HDD comunque presenta degli “errori” a livello fisico. Giusto o è una fesseria quel che ho detto? :bott
 

BAT

Nuovo iscritto
Iscritto dal
28 Giugno 2020
Messaggi
21
#4
E' giusto quello che hai detto ed ho un paio di info da aggiungere sui settori degli HDD (gli SSD sono esclusi da quanto segue).
I settori rovinati in hardware sono settori fisici. I vecchi HDD (approssimativamente fino al 2011) escono di fabbrica con settori fisici da 512 KiB, gli HDD più moderni "advanced format" hanno settori fisici da 4 KiB.
Per motivi di efficienza, i settori fisici vengono raggruppati (ed usati) dal sistema operativo in gruppi (cluster) della dimensione di 4 KiB;
questo significa che un cluster è composto da 8 settori da 512 KiB o da 1 settore da 4 KiB, dipende dall'hard-disk.
Quando un settore si rompe il firmware del disco lo marca come difettoso e, se possibile, lo rimpiazza con un settore di riserva della stessa traccia.
Se il settore difettoso faceva parte di un cluster disponibile al sistema operativo, tool come CrystalDiskInfo ti dice che il disco è "in stato critico" (e ti mette un colore giallo per meglio evidenziarlo).
A questo punto "diffidiamo" dell'intero HDD, tuttavia ci sono dischi "in stato critico" che continuano a funzionare per anni.
3 giorni fa ho estratto un HDD "in stato critico" da più di 4 anni (il PC che lo conteneva s'è guastato per altri motivi). L'ho riformattato con una formattazione zerofill (a "basso livello") con HDD LLF (https://hddguru.com/software/HDD-LLF-Low-Level-Format-Tool/). Il tool ha trovato 25 settori fisici difettosi che il firmware avrà marcato come inutilizzabili. Terminata la formattazione a basso livello ho rifatto le partizioni ed installato Windows 7 su un vecchio PC che devo usare a scopo retrogaming (niente dati critici quindi). Per curiosità ho lanciato di nuovo CrystalDiskInfo: il disco NON è più in stato critico ma "buono"; i settori riallocati vengono rilevati nei dati SMART ma evidentemente non fanno parte di cluster operativi.
Sono fiducioso di aver recuperato l'HDD e che continuerà a funzionare ancora per anni, poi magari si rompe dopodomani... :bang ma, visto lo scopo a cui è destinato il PC, non sarebbe un gran danno.
 

Liupen

SSD MAN
STAFF
Iscritto dal
30 Ottobre 2018
Messaggi
762
#5
Grazie per il contributo :ok

un cluster è composto da 8 settori da 512 KiB o da 1 settore da 4 KiB, dipende dall'hard-disk.
512e VS 4K (Advanced format)... giusto?
3 giorni fa ho estratto un HDD "in stato critico"
Dico solo che se il disco è sopravvissuto alla formattazione zero fill... ha già vinto :asd Fai sapere come se la cava tra qualche tempo.

Sapresti invece (scusa @Black [SSJ Rosé] che approfitto) dirmi se per te è trascurabile ed in un certo senso normale, un errore CRC su un ssd di sistema avvenuto con una mancanza improvvisa di energia? Ora è da un paio di anni che è così e mi sembra non abbia avuto altre conseguenze...

1593434003852.png
 

BAT

Nuovo iscritto
Iscritto dal
28 Giugno 2020
Messaggi
21
#6
512e VS 4K (Advanced format)... giusto?
si giusto

Sapresti invece (scusa @Black [SSJ Rosé] che approfitto) dirmi se per te è trascurabile ed in un certo senso normale, un errore CRC su un ssd di sistema avvenuto con una mancanza improvvisa di energia?
Un errore CRC può essere semplicemente dovuto alla corruzione dei dati scritti, probabilmente dovuto a lla mancanza di energia, non significa necessariamente che ci sia un blocco di memoria flash difettoso. Se dovessero aumentare gli errori CRC, potrebbe essere un problema del cavo. Io penso che non hai nulla.
Piuttosto: hai provveduto a comprare un gruppo di continuità? Pure un APC di tipo line-interactive di fascia medio bassa va benissimo, sono un centinaio di euro spesi bene, rischiare rotture dell'hardware per interruzione/sbalzi di corrente un utente avanzato come te non se lo può permettere (anzi, non se lo dovrebbe permettere nessuno)
 
Ultima modifica:
Iscritto dal
10 Maggio 2020
Messaggi
37
#8
(scusa @Black [SSJ Rosé] che approfitto)
Figurati, no problem!!! :asd
Già che ci siamo, se non do ovviamente fastidio, posso chiedervi che cos’è un errore CRC, tasso errore CRC e gli errori incorreggibili (se posso, ognuno di questi da cos’è dovuto)? Perchè a quanto vedo, nello SMART dell’SSD ci sono meno parametri invece dell’HDD, come i g-sense, i settori danneggiati ecc... penso che sia dovuto dall’assenza di piatti, settori sui piatti, “braccio” che scrive sui piatti (non so come si chiami) ecc... grazie per le risposte :popcorn-drink
PS: @BAT ma sei sicuro che sia stato un settore danneggiato a livello fisico che hai sistemato tramite una LLF? Te lo chiedo perché, tempo fa lessi su internet che i settori danneggiati a livello fisico (o hardware) non possono esser “salvati” tramite una formattazione LLF, anzi, servono strumentazioni costose per eseguire quella che viene chiamata “Self-scan”..
 
Ultima modifica:

BAT

Nuovo iscritto
Iscritto dal
28 Giugno 2020
Messaggi
21
#9
No no, infatti i settori fisici danneggiati rimangono danneggiati, non si possono riparare con una semplice formattazione zerofill, sono rotti e basta.
Però quando individuati il firmware li inserisce in una lista interna di settori da sostiutire, li sostituisce (se ci sono settori di riserva) e non li mette più a disposizione del sistema operativo. Non essendo più usati non possono fare danni e perdere dati... o così dovrebbe essere.
 

Liupen

SSD MAN
STAFF
Iscritto dal
30 Ottobre 2018
Messaggi
762
#10
No no, infatti i settori fisici danneggiati rimangono danneggiati, non si possono riparare con una semplice formattazione zerofill, sono rotti e basta.
Però quando individuati il firmware li inserisce in una lista interna di settori da sostiutire, li sostituisce (se ci sono settori di riserva) e non li mette più a disposizione del sistema operativo. Non essendo più usati non possono fare danni e perdere dati... o così dovrebbe essere.
Ahahaha! La riallocazione spiegata il due frasi...e io che ho fatto il pippone noioso :silly
 
Top

Caro utente, ti ringraziamo per essere quì.

Ci siamo accorti che stai utilizzando un AdBlock o qualche estensione che impedisce il caricamento completo della pagina.

Non abbiamo banner fastidiosi, animazioni flash o popup irritanti.

I nostri proventi ci aiutano a coprire i costi di gestione del sito, recuperare eventuale materiale per la redazione e continuare il nostro operato.

Per favore, aggiungi hwreload.it alla whitelist o disabilita direttamente la tua estensione che blocca la pubblicità.

Ti ringraziamo per l'attenzione.