Perché gli SSD hanno dimensioni come 240 GB o 120 GB anziché i normali 256 GB o 512 GB? Quei numeri hanno molto più senso di 240 o 120.
Perché gli SSD hanno dimensioni come 240 GB o 120 GB anziché i normali 256 GB o 512 GB? Quei numeri hanno molto più senso di 240 o 120.
Risposte:
Mentre molti SSD moderni come la serie 840 EVO forniscono le dimensioni a cui sei abituato, i 256 GB citati, i produttori hanno usato per conservare un po 'di spazio di archiviazione per i meccanismi che combattono il calo delle prestazioni e i difetti.
Se, ad esempio, hai acquistato un'unità da 120 GB, puoi essere abbastanza sicuro che sia realmente 128 GB internamente. Lo spazio preservato offre semplicemente al controller / firmware spazio per elementi come TRIM, Garbage Collection e Wear Leveling. È stata pratica comune lasciare un po 'di spazio ineguagliato - sopra lo spazio che è già stato reso invisibile dal controller - quando gli SSD sono arrivati sul mercato per la prima volta, ma gli algoritmi sono notevolmente migliorati, quindi non è necessario fallo ancora.
EDIT: ci sono stati alcuni commenti sul fatto che questo fenomeno deve essere spiegato con la discrepanza tra lo spazio pubblicizzato, espressa in GigaBytes (ad esempio 128x 10 ^ 9 byte) rispetto al valore GibiByte che mostra il sistema operativo, che è — la maggior parte del tempo: una potenza di due, calcolando a 119.2 Gibibyte in questo esempio.
Per quanto ne so, questo è qualcosa che si aggiunge alle cose già spiegate sopra. Anche se non posso certamente affermare quali algoritmi esatti richiedono la maggior parte di quello spazio extra, il calcolo rimane lo stesso. Il produttore assembla un SSD che effettivamente utilizza una potenza di due numeri di celle flash (o una combinazione di tali), sebbene il controller non renda tutto lo spazio visibile al sistema operativo. Lo spazio che rimane è pubblicizzato come Gigabyte, in questo esempio guadagna 111 Gibibyte.
I dischi rigidi sia meccanici che a stato solido hanno una capacità grezza superiore alla loro capacità nominale. La capacità "extra" viene tenuta da parte per sostituire i settori danneggiati, quindi le unità non devono essere perfette al di fuori della linea di assemblaggio e in modo che i settori danneggiati possano essere mappati successivamente durante l'uso ai settori di riserva. Durante i test iniziali in fabbrica, tutti i settori danneggiati vengono mappati ai settori di riserva. Quando l'unità viene utilizzata, monitora i settori (utilizzando routine di correzione degli errori per rilevare errori a livello di bit) e quando un settore inizia a danneggiarsi, copia il settore in uno di riserva, quindi lo rimappa. Ogni volta che viene richiesto quel settore, l'unità passa al nuovo settore anziché al settore originale.
Sulle unità meccaniche, possono aggiungere quantità arbitrarie di spazio di archiviazione in quanto controllano la codifica di servo, testa e piatto, quindi possono avere una memoria nominale di 1 terabyte con 1 gigabyte aggiuntivo di spazio di riserva per la rimappatura del settore.
Tuttavia, gli SSD utilizzano la memoria flash, che viene sempre prodotta con potenze di due. Il silicio richiesto per decodificare un indirizzo è lo stesso per un indirizzo a 8 bit che accede a 200 byte come un indirizzo a 8 bit che accede a 256 byte. Dal momento che quella parte del silicio non cambia di dimensioni, l'uso più efficiente del silicon realestate è quello di utilizzare potenze di due nella capacità flash effettiva.
Quindi i produttori di unità sono bloccati con una capacità grezza totale in potenze di 2, ma devono ancora mettere da parte una parte della capacità grezza per la rimappatura del settore. Ciò porta a 256 GB di capacità raw che fornisce solo 240 GB di capacità utilizzabile, ad esempio.
In poche parole, tutti gli SSD non sono, alla base, ciò che pubblicizzano. Ciò che pubblicizzano è lo spazio su disco "utilizzabile". Per la maggior parte delle unità con 120 GB di spazio di archiviazione "utilizzabile", l'unità di base è in realtà un'unità da 128 GB. 8 GB sono riservati per alcune attività specifiche di gestione in background, come indicato in precedenza.
Ora, tecnicamente potrebbero schiaffeggiare un altro chip sul pezzo per darti 128 GB di spazio "utilizzabile", ma questo costa più soldi. Le aziende che realizzano unità hanno capito che alla gente interessa di più quanto sia grande la loro unità che se il suo spazio utilizzabile sia in realtà un multiplo di 2.
Sidenote: in realtà ci sono alcuni modi per scrivere il codice di sistema richiesto, motivo per cui vedrai unità da 120, 124 e 128 GB di diversi produttori. Dispongono tutti di 128 GB di spazio "grezzo", ma gestiscono le cose di sfondo richieste in modo diverso. Nessuna versione della codifica dell'unità è così migliore delle altre che nella maggior parte dei casi la noteresti. Potresti notare una leggera differenza nei benchmark delle prestazioni, ma è molto improbabile che se ne accorga a meno che il tuo computer non stia facendo un duro lavoro e non sai cosa cercare.
Crescere con poteri di due è un concetto strettamente matematico che rende facile prendere scorciatoie matematiche in un computer basato su due stati. Ciò significa che un computer può eseguire la moltiplicazione o la divisione di numeri interi per un fattore due con la stessa facilità con cui è possibile moltiplicare o dividere un numero per 10. È sufficiente spostare le cifre a sinistra o a destra senza dover eseguire effettivamente un calcolo.
Ogni linguaggio di programmazione ha un operatore per queste semplici operazioni, in linguaggi simil-C, sono n >> m
aka shift n right m bits
aka divide n by 2^m
e n << m
aka shift left
aka multiply n by 2^m
. All'interno del processore questa operazione generalmente richiede un ciclo e avviene sui dati sul posto. Qualsiasi altra operazione aritmetica, come la moltiplicazione per 3, richiede di invocare una ALU [Arithmetic Logic Unit] per trascorrere un ciclo in più o due per eseguire il marshalling dei bit e copiare il risultato in un certo registro. Heaven ti aiuta se hai bisogno di precisione in virgola decimale e viene coinvolta la FPU [Floating Point Unit].
Comunque, questo è il motivo per cui al tuo computer piace riferirsi a tutto internamente come potenze di due. Se la macchina dovesse andare a un'operazione ALU ogni volta che voleva fare qualche semplice calcolo matematico per calcolare un offset del puntatore di memoria, il computer eseguirà un ordine di grandezza più lento.
La crescita dell'archiviazione fisica, d'altra parte, è governata meno dalla matematica binaria grezza di quanto non lo sia dalla fisica, dall'ingegneria e dal * soffocamento sulla parola * marketing. Con un disco mandrino la capacità è determinata da: il numero di piatti, la dimensione dei piatti, la dimensione dei "cilindri" e il numero di settori che possono adattarsi a un cilindro. Questi sono generalmente determinati più dalle capacità fisiche dell'hardware e dalla precisione delle testine di lettura / scrittura che da qualsiasi altra cosa.
Non sono così intimamente familiare con le caratteristiche interne degli SSD, ma immagino che il ridimensionamento sia basato su: possiamo costruire una matrice di settori N x M NAND, sovrapporli K in profondità in un chip e inserire J in chip una custodia per HDD da 2,5 ". Riservate l'H% di esse per l'ottimizzazione delle prestazioni, arrotondate il numero al multiplo più vicino del 5/10/20 e questa è la capacità dell'unità che stamperemo sulla scatola.
Avere uno qualsiasi di questi calcoli a una potenza netta di due sarà un colpo di fortuna completo e di scarso beneficio per chiunque.
var = var / 256
con var >> 8
per voi in questi giorni.
Negli SSD più vecchi la capacità era in multipli di 8 perché vi sono 8 "bit" (0/1) in un "byte". Proprio come con le unità flash, questo era in un momento in cui le persone non vedevano i vantaggi di un SSD e ogni "bit" aiutava.
Ora che i consumatori sono più consapevoli della tecnologia SSD e anche con i progressi della tecnologia, i produttori di SSD li stanno riportando ai numeri più familiari da una combinazione "stimando" le dimensioni, proprio come il mercato degli HDD, e combinando chip di dimensioni diverse per ottenere un numero pari di 10, (ad esempio 6 GB + 4 GB = 10 GB)