exFAT é um sistema de arquivos criado pela Microsoft para lidar com as limitações do FAT32 quando usado em unidades flash de grande capacidade. Suporte para o sistema de arquivos exFAT apareceu no Windows Vista Service Pack 1 e Windows XP com Service Pack 2.
Tamanho máximo do arquivo em comparação com FAT32 expandido de 4 GB para 16 exabytes, a restrição ao tamanho máximo da partição de 32 GB foi removida para reduzir a fragmentação, além disso, um bitmap de bloco gratuito foi introduzido para velocidade, o limite do número de arquivos em um diretório foi aumentado para 65 mil, a capacidade de armazenar ACLs foi fornecida.
Como você sabe, Até recentemente, o uso deste sistema de arquivos no Linux era através a ativação de seu suporte com a ajuda de uso de software desenvolvido por terceiros. Porque a implementação foi privada.
Mas até alguns meses atrás, a Microsoft publicou as especificações disponíveis publicamente e tornou possível usar patentes exFAT para Linux gratuitamente.
Embora este movimento da Microsoft não divulgou o código-fonte, o que isso faz é você está apenas liberando direitos de uso exFAT e reservar qualquer intenção de reclamação ou demanda juntamente com os membros da Rede de Invenções Abertas (OIN).
Longe disso, o driver exFAT também desenvolvido pela Samsung e que propôs incluir no kernel Linux um conjunto de patches com a implementação do novo driver exFAT, baseado no código base "sdfat" atual, desenvolvido para o firmware dos smartphones Android da Samsung.
Planejamos tratar esta versão como o futuro ascendente para a base de código depois de mesclada, e todos os novos recursos e correções de bugs irão primeiro.
A julgar pelos dados disponíveis, o novo código envolve mais operações com metadados e inclui a correção de vários erros. Até agora, ele só é usado em dispositivos Samsung Android.
Nesta implementação oferecida pela Samsung, adicionado à seção experimental »teste» ("Drivers / staging /") Kernel do Linux 5.4 com base em código desatualizado (versão 1.2.9).
Mesmo que os entusiastas do firmware Android tenham implementado um novo driver sdFAT (2.x), mas A Samsung decidiu introduzir este driver no kernel Linux principal por conta própria.
Até agora, a implementação proposta pela Samsung recebeu várias aprovações de desenvolvedores de kernel Linux proeminentes.
Como tal, dado o momento, ainda há chances de que este driver exFAT possa substituir o driver exFAT prep atual para Linux 5.6 se as revisões de código restantes forem bem.
Comparado com o driver sdfat enviado nos telefoness, as seguintes alterações foram feitas:
- Comparado com o driver exFAT adicionado anteriormente ao kernel, o novo driver fornece um aumento de desempenho de aproximadamente 10%.
- O código com a implementação de VFAT FS foi removido, pois este sistema de arquivos já é suportado separadamente no kernel (fs / fat).
- Nome do controlador alterado para exfat
- Código re-faturado e limpo para se integrar totalmente à versão upstream do Linux e seguir o estilo de codificação do Linux
- A otimização das operações de metadados, como criação de arquivo, pesquisa de item de sistema de arquivo (pesquisa) e definição de conteúdo de diretório (readdir), foram realizadas.
- Bugs identificados durante testes adicionais foram corrigidos.
Se os patches forem aceitos, eles serão incluídos no código do kernel Linux 5.6, cuja publicação está prevista para aproximadamente 2 ou 3 meses até o momento. Embora se surgir um problema, a implementação do driver Samsung exFAT pode ser adiada para a versão 5.7 do kernel Linux.
Finalmente, se você quiser saber mais sobre as novidades, bem como os recursos que são adicionados na nova versão do driver Samung exFAT, que é a versão 11, você pode fazer isso em o seguinte link.