A Samsung propõe incluir seu driver exFAT no Linux e, se assim for, ele chegará no Kernel 5.6

exFAT-on-Linux

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.