Decidi que algumas informações básicas podem ser úteis para esclarecer essa resposta, mas como você pode ver, fiquei um pouco obcecado por isso, talvez você queira pular para o final e depois voltar, se necessário. Embora eu saiba um pouco, não sou especialista em SSDs, por isso, se alguém vê um erro, EDITE -O. :).
Informações básicas:
O que é um SSD ?:
Uma unidade SSD ou de estado sólido é um dispositivo de armazenamento sem partes móveis. O termo SSD costuma se referir especificamente a unidades de estado sólido baseadas em flash nand destinadas a atuar como uma alternativa ao disco rígido, mas na realidade elas são apenas uma forma de SSD e nem mesmo a mais popular. O tipo mais popular de SSD é a mídia removível baseada em nand-flash, como pen drives (pen drives) e cartões de memória, embora raramente sejam referidos como SSD. Os SSDs também podem ser baseados em RAM, mas a maioria das unidades de ram é gerada por software em oposição ao hardware físico.
Por que os SSDs Nand-flash destinados a atuar como uma alternativa ao disco rígido existem ?:
Para executar um sistema operacional e seu software, é necessário um meio de armazenamento rápido. É aqui que o ram entra em cena, mas historicamente o ram era caro e as CPUs não podiam lidar com grandes quantidades. Quando você executa um sistema operacional ou programa, as partes de dados atualmente necessárias são copiadas para sua memória RAM, porque seu dispositivo de armazenamento não é rápido o suficiente. Um gargalo é criado, porque você precisa aguardar a cópia dos dados do dispositivo de armazenamento lento para a ram. Embora nem todos os SSDs nand-flash tenham melhor desempenho do que o disco rígido mais tradicional, os que ajudam a reduzir o gargalo, proporcionando tempos de acesso mais rápidos, velocidades de leitura e velocidades de gravação.
O que é o flash Nand ?:
O armazenamento flash é um meio de armazenamento que usa eletricidade em vez de magnetismo para armazenar dados. Nand-flash é um armazenamento flash que usa um gateway NAND. Ao contrário do flash normal, que é de acesso aleatório, o flash nand é acessado sequencialmente.
Como os SSDs Nand-flash armazenam dados?
O armazenamento flash nand é composto por blocos, esses blocos são divididos em células, as células contêm páginas. Ao contrário de um disco rígido que usa magnetismo para armazenar dados, as mídias flash usam eletricidade, porque esses dados não podem ser substituídos; os dados devem ser apagados para reutilizar o espaço. O dispositivo não pode apagar páginas individuais; A eliminação deve ocorrer no nível do bloco. Como os dados não podem ser gravados em um bloco que já está sendo usado (mesmo que nem todas as páginas estejam), o bloco inteiro deve ser apagado primeiro e, em seguida, o bloco em branco agora pode ter dados gravados em suas páginas. O problema é que você perderia dados já existentes nessas páginas, incluindo dados que não deseja descartar! Para impedir que esses dados existentes sejam retidos, eles devem ser copiados em outro lugar antes de executar a exclusão do bloco.
Nos discos rígidos, uma placa magnética é usada para armazenar dados. Assim como os discos de vinil, o prato tem faixas, e essas faixas são divididas em seções chamadas setores. Um setor pode conter uma certa quantidade de dados (normalmente 512 bytes, mas alguns mais novos são 4KB). Quando você aplica um sistema de arquivos, os setores são agrupados em clusters (com base no tamanho especificado, chamado tamanho de alocação ou tamanho do cluster) e, em seguida, os arquivos são gravados nos clusters. Também é possível dividir um setor para tornar os clusters menores que o tamanho do seu setor. O espaço não utilizado em um cluster após a gravação de um arquivo em um cluster (ou vários) não é utilizável; o próximo arquivo inicia em um novo cluster. Para evitar muito espaço inutilizável, as pessoas geralmente usam tamanhos de cluster menores, mas isso pode diminuir o desempenho ao gravar arquivos grandes. Os SSDs nand-flash não possuem uma placa magnética, eles usam eletricidade passando através de blocos de memória. Um bloco é constituído por células contendo páginas. As páginas têm capacidade X (geralmente 4 KB) e, portanto, o número de páginas determinará a capacidade de um bloco (geralmente 512 KB). Nos SSDs, uma página equivale ao setor em um disco rígido, porque ambos representam a menor divisão de armazenamento.
O que é o nivelamento de desgaste ?:
Os blocos de armazenamento flash nand podem ser gravados e apagados um número limitado de vezes (referido como seu ciclo de vida). Para evitar que a unidade sofra redução de capacidade (blocos mortos), faz sentido desgastar os blocos da maneira mais uniforme possível. O ciclo de vida limitado também é a principal razão pela qual muitas pessoas sugerem não ter um arquivo de paginação ou partição de troca no sistema operacional se você estiver usando um SSD baseado em Nand-flash (embora as rápidas velocidades de transferência de dados do dispositivo para a ram também sejam uma das principais fator nessa sugestão).
O que é excesso de provisionamento ?:
O excesso de provisionamento define a diferença entre quanto espaço livre existe, comparado ao quanto parece haver. Os dispositivos de armazenamento baseados em flash nand afirmam ser menores do que são, de modo a garantir blocos vazios para o descarte de lixo. Existe um segundo tipo de provisionamento em excesso chamado dinâmico sobre provisionamento que simplesmente se refere ao espaço livre conhecido dentro do espaço livre mostrado. Existem dois tipos de provisionamento dinâmico em excesso: nível do sistema operacional e nível do controlador de unidade. No nível do sistema operacional, o Trim pode ser usado para liberar blocos que podem ser gravados imediatamente. No nível do controlador, espaço em disco não alocado (não particionado, sem sistema de arquivos) pode ser usado. Ter mais blocos gratuitos ajuda a manter a unidade funcionando com o melhor desempenho, pois ela pode gravar imediatamente.
O que é a amplificação de gravação ?:
Como as mídias Nand-flash exigem que um bloco seja apagado antes de ser gravado, todos os dados dentro do bloco que não estão sendo apagados devem ser copiados para um novo bloco por meio do triturador de lixo. Essas gravações adicionais são chamadas de amplificação de gravação.
O que é o Trim.?:
Os sistemas operacionais são construídos com os discos rígidos tradicionais em mente. Lembre-se de que um disco rígido tradicional pode substituir diretamente dados. Quando você exclui um arquivo, o sistema operacional o marca como excluído (aceitável sobrescrever), mas os dados ainda estão lá até que uma operação de gravação ocorra lá. Nos SSDs baseados em flash Nand, isso é um problema, porque os dados devem ser apagados primeiro. A exclusão ocorre no nível do bloco, portanto, pode haver dados adicionais que não estão sendo excluídos. O descarte de lixo copia todos os dados que não estão sendo excluídos para os blocos vazios e, em seguida, os blocos em questão podem ser apagados. Tudo isso leva tempo e causa gravações desnecessárias (amplificação de gravação)! Para contornar isso, um recurso chamado Trim foi criado. Trim fornece ao sistema operacional o poder de informar o SSD para apagar blocos com páginas que contêm dados que o sistema operacional marcou como excluídos durante períodos de tempo em que você não está solicitando uma operação de gravação no local. A coleta de lixo faz isso e, como resultado, os blocos são liberados para que, com sorte, as gravações possam ocorrer em blocos que não precisam ser apagados primeiro, o que torna o processo mais rápido e ajuda a reduzir ao máximo a amplificação de gravação. Isso não é feito em uma base de arquivo; Trim usa endereçamento de bloco lógico. O LBA especifica os setores (páginas) a serem apagados e a eliminação ocorre no nível do bloco. e ajuda a reduzir ao máximo a amplificação de gravação. Isso não é feito em uma base de arquivo; Trim usa endereçamento de bloco lógico. O LBA especifica os setores (páginas) a serem apagados e a eliminação ocorre no nível do bloco. e ajuda a reduzir ao máximo a amplificação de gravação. Isso não é feito em uma base de arquivo; Trim usa endereçamento de bloco lógico. O LBA especifica os setores (páginas) a serem apagados e a eliminação ocorre no nível do bloco.
A resposta à sua pergunta "Desvantagens de particionar um SSD?":
SSDs baseados em RAM:
Não há absolutamente nenhuma desvantagem, porque eles são de acesso aleatório!
SSDs baseados em flash nand:
As únicas desvantagens que vêm à minha mente seriam:
O nivelamento de desgaste não terá tanto espaço livre para brincar, porque as operações de gravação serão espalhadas por um espaço menor, para que você "possa", mas não necessariamente desgastará essa parte da unidade mais rapidamente do que se a unidade inteira era uma única partição, a menos que você esteja executando um desgaste equivalente nas partições adicionais (por exemplo: uma inicialização dupla).
Como os discos rígidos, os SSDs nand-flash são acesso seqüencial, portanto, todos os dados que você escreve / lê nas partições adicionais ficam mais distantes do que "poderiam" se estivessem escritos em uma única partição, porque as pessoas geralmente deixam espaço livre nas partições . Isso aumentará o tempo de acesso aos dados armazenados nas partições adicionais.
Menos espaço total aumenta a probabilidade de gravar arquivos fragmentados e, embora o impacto sobre o desempenho seja pequeno, lembre-se de que geralmente é uma má idéia desfragmentar um SSD nand-flash, pois isso desgastará a unidade. É claro que, dependendo do sistema de arquivos que você está usando, resultará em quantidades extremamente baixas de fragmentação, porque elas foram projetadas para gravar arquivos como um todo sempre que possível, em vez de despejá-lo em todo o lugar para criar velocidades de gravação mais rápidas.
Eu diria que não há problema em ter várias partições, mas o nivelamento de desgaste pode ser uma preocupação se você tiver algumas partições com muita atividade de gravação e outras com muito pouca. Se você não particionar o espaço que não planeja usar, e em vez disso deixá-lo para provisionamento dinâmico, poderá receber um aumento no desempenho, pois será mais fácil liberar blocos e gravar dados seqüenciais. No entanto, não é necessário garantir que o excesso de provisionamento seja necessário, o que nos leva de volta ao ponto 1 sobre o nivelamento de desgaste.
Algumas outras pessoas neste segmento discutiram como o particionamento afetará as contribuições da Trim para o provisionamento dinâmico. No meu entender, o TRIM é usado para apontar setores (páginas) que possuem dados sinalizados para exclusão e, portanto, o descarte de lixo pode apagar livremente esses blocos. Esse espaço livre atua como provisionamento dinâmico dinâmico somente dentro da partição THAT, porque esses setores fazem parte dos clusters usados pelo sistema de arquivos dessa partição; outras partições têm seus próprios sistemas de arquivos. No entanto, posso estar totalmente enganado quanto a isso, pois toda a ideia de provisionamento em excesso não é clara para mim, pois os dados serão gravados em locais que nem sequer possuem sistemas de arquivos ou aparecem na capacidade das unidades. Isso me faz pensar se talvez o excesso de provisionamento de espaço seja usado temporariamente antes de uma operação de gravação otimizada final para blocos dentro de um sistema de arquivos? É claro que as contribuições da Trim para o provisionamento dinâmico em excesso no sistema de arquivos não seriam temporárias, pois poderiam ser gravadas diretamente, pois já estão no espaço útil. Essa é minha teoria pelo menos. Talvez meu entendimento de itens de arquivos esteja errado? Não consegui encontrar nenhum recurso detalhado sobre isso.