O desenvolvedor da IBM, Ojaswin Mujoo, apresentou recentemente um conjunto de patches para o sistema de arquivos EXT4, parte do kernel Linux, que visam implementar um recurso chamado extsize. Essa nova funcionalidade, que já está em desenvolvimento no sistema de arquivos XFS, é um passo importante para tornar o EXT4 mais confiável, especialmente no que se refere às chamadas gravações atômicas, um tipo de gravação que garante que os dados sejam gravados de forma completa, evitando falhas parciais que podem corromper arquivos.
O que é Extsize?
Para quem não está familiarizado com o conceito, as dicas de extsize são basicamente instruções que o sistema de arquivos usa para organizar melhor o armazenamento de dados. Quando você salva um arquivo no seu computador, os dados desse arquivo são armazenados em blocos. Com a nova dica de extsize, o EXT4 tenta garantir que esses blocos estejam organizados de maneira alinhada, o que ajuda a melhorar a velocidade de leitura e gravação dos dados e, mais importante, a garantir que os dados sejam salvos corretamente, mesmo que ocorra uma falha durante a gravação.
Por que isso é importante?
Sem o recurso de gravações atômicas, pode acontecer de parte de um arquivo ser gravado e outra parte não, especialmente em casos de queda de energia ou falhas de sistema. Isso pode corromper o arquivo ou causar perda de dados. Com o suporte às dicas de extsize, o EXT4 ficará mais preparado para lidar com essas situações, garantindo que as gravações sejam feitas de maneira completa ou não sejam feitas, evitando dados incompletos.
Além disso, essa tecnologia também pode ser aplicada em outras áreas, como o alinhamento de discos RAID, que são comumente usados em servidores para aumentar a velocidade de acesso aos dados e garantir maior segurança.
Como o EXT4 difere do XFS?
Embora o EXT4 e o XFS utilizem conceitos semelhantes, há algumas diferenças importantes entre eles. No XFS, por exemplo, as dicas de extsize se aplicam principalmente ao início lógico dos blocos, ou seja, onde o sistema começa a armazenar os dados. Já no EXT4, as dicas também garantem que o início físico dos blocos seja alinhado, o que oferece um nível extra de segurança e organização dos dados.
Outra diferença é que o EXT4 exige que o valor de extsize seja uma potência de 2 (como 2, 4, 8, etc.), enquanto o XFS permite valores diferentes. Essa escolha foi feita porque o foco principal do EXT4 com esse recurso é suportar gravações atômicas, que precisam desse tipo de alinhamento.
Próximos Passos
Atualmente, essas melhorias estão em fase de revisão e testes, e o suporte completo às gravações atômicas no EXT4 ainda levará algum tempo para ser implementado. No entanto, esse trabalho é um marco importante para garantir a segurança e a integridade dos dados que usamos no dia a dia, desde arquivos pessoais até grandes volumes de dados em servidores.
Se você quiser saber mais sobre o desenvolvimento dessas dicas de extsize para o EXT4, pode acompanhar os detalhes na lista de e-mails do kernel Linux, onde os patches estão sendo revisados.