Recentemente comprei um Samsung 970 EVO Plus 2TB SSD e gostaria de saber algo sobre nivelamento de desgaste e partições.
O nivelamento de desgaste funciona da mesma forma, independentemente de eu particioná-lo ou não? Eu gostaria de fazer três partições e temo que isso quebre esse algoritmo útil.
Quero dizer, o nivelamento de desgaste funciona em cada partição separadamente ou em todo o disco físico?
Costumo acreditar nisso para todo o disco porque, caso contrário, a partição de superprovisionamento não faria sentido. Mas eu quero ter certeza.
O nivelamento de desgaste é realizado pelo controlador SSD e, basicamente, o controlador não tem conhecimento de partições e sistemas de arquivos.
O ponto importante é que existe uma tabela de mapeamento entre os setores lógicos do drive (aqueles que o SO endereça) e os setores físicos do drive nos chips NAND. Os algoritmos de nivelamento de desgaste e coletor de lixo dependem muito dessa tabela de mapeamento.
O espaço de endereço lógico da unidade possivelmente é particionado, mas o espaço de endereço físico não.
Por exemplo, o sistema operacional diz ao controlador para gravar alguns dados no setor lógico #A que está próximo ao início da unidade do ponto de vista do sistema operacional, mas o controlador pode decidir usar qualquer setor físico em qualquer lugar da unidade. Por exemplo, o setor #B que está próximo ao final da unidade se tiver uma baixa contagem de gravações e atualiza a tabela de mapeamento com um link (lógico)#A --> (físico)#B. Então, quando o sistema operacional deseja ler o setor lógico #A, o controlador realmente retorna o conteúdo do setor físico #B.
Se o setor lógico #B está na mesma partição que o setor lógico #A ou não é irrelevante.
Além disso o controller pode decidir a qualquer momento mover o conteúdo do setor físico #B para qualquer outro setor físico #C, bastando ele atualizar a tabela de mapeamento #A --> #C. Isso é completamente transparente para o sistema operacional.
A tabela de partições é entendida principalmente pelo sistema operacional e de forma limitada pelo BIOS/EFI.
O firmware do disco só conhece blocos e setores e pronto.
Resposta : O particionamento não altera nada no nivelamento de desgaste.
Você está certo; não faz sentido.
Considere o sistema operacional de desktop mais popular, o Windows. O Windows cria três partições logo de cara: uma partição EFI , uma partição de disco (C: drive) e uma partição de recuperação. Se várias partições parassem de usar o nivelamento, quase todos os desktops do planeta não o usariam. O nivelamento de desgaste funciona no nível do firmware do SSD; ele não se importa com o sistema de arquivos ou particionamento.
Sim, o nivelamento de desgaste funciona em todo o SSD. Quando você está superprovisionando (manualmente, criando uma partição vazia não utilizada ou usando o Samsung Magician), está criando uma partição vazia que servirá como um conjunto de blocos vazios que podem ser usados pelo algoritmo de nivelamento de desgaste. Se o seu SSD for classificado em 1.000 ciclos de gravação, haverá uma diferença entre gravar 1.000 vezes em um único bloco e distribuir as gravações em 1.000 blocos diferentes.
Na prática, com o uso normal do SSD, uma parte do seu disco sempre estará vazia, então o principal motivo para ter uma partição não utilizada é evitar o desgaste excessivo se você encher todo o disco com dados. Nesse cenário, o algoritmo não terá muitos blocos vazios para embaralhar, portanto, reutilizará os blocos existentes.
Existem alguns dados da Samsung mostrando como o superprovisionamento se relaciona com a vida útil , mas a metodologia por trás desses testes não é clara: