Samsung propôs uma nova opção de driver exFAT para o kernel Linux

Samsung sugerido para inclusão no kernel Linux, um conjunto de patches com implementação de um novo driver exFAT, baseado na atual base de código “sdfat”, desenvolvido para o firmware de smartphones Samsung Android. Se os patches forem aceitos, eles serão incluídos no kernel Linux 5.6, que deverá ser lançado em 2 a 3 meses. Comparado ao driver exFAT adicionado anteriormente ao kernel, o novo driver oferece um aumento de desempenho de aproximadamente 10%.

As principais diferenças entre a edição do driver sdfat para o kernel principal do Linux e o driver usado pela Samsung no Android:

  • O código com a implementação do sistema de arquivos VFAT foi removido, pois este sistema de arquivos já é suportado separadamente no kernel (fs/fat);
  • O driver foi renomeado de sdfat para exfat;
  • O código foi refatorado. Os textos fonte são ajustados aos requisitos de formatação de código do kernel Linux;
  • Foram otimizadas operações com metadados, como criação de arquivos, busca de elementos do sistema de arquivos (lookup) e determinação do conteúdo de um diretório (readdir).
  • Erros identificados durante testes adicionais foram corrigidos.

Lembramos que depois da Microsoft publicado especificações públicas e permitiu o uso livre de royalties de patentes exFAT no Linux, um driver exFAT, também desenvolvido pela Samsung, mas baseado em código legado (versão 1.2.9). Os entusiastas do firmware Android foram portado um novo driver sdFAT (2.x), mas a Samsung decidiu independentemente promover este driver no kernel principal do Linux. Além disso, a Paragon Software abriu driver alternativo, anteriormente fornecido em um conjunto proprietário de drivers.

O sistema de arquivos exFAT foi criado pela Microsoft para superar as limitações do FAT32 quando usado em unidades Flash de grande capacidade. O suporte para o sistema de arquivos exFAT apareceu no Windows Vista Service Pack 1 e no Windows XP com Service Pack 2. O tamanho máximo de arquivo em comparação com FAT32 foi expandido de 4 GB para 16 exabytes, e a limitação do tamanho máximo de partição de 32 GB foi eliminada , para reduzir a fragmentação e aumentar a velocidade, foi introduzido um bitmap de blocos livres, o limite do número de arquivos em um diretório foi aumentado para 65 mil e foi fornecida a capacidade de armazenar ACLs.

Fonte: opennet.ru

Adicionar um comentário