Samsung har föreslagit ett nytt exFAT-drivrutinalternativ för Linux-kärnan

Samsung föreslog для включения в ядро Linux набор патчей с реализацией нового драйвера exFAT, основанного на актуальной кодовой базе «sdfat», развиваемой для прошивок Android-смартфонов Samsung. Если патчи будут приняты, то они войдут в состав ядра Linux 5.6, релиз которого ожидается через 2-3 месяца. По сравнению с ранее добавленным в ядро драйвером exFAT, новый драйвер обеспечивает прирост производительности примерно на 10%.

Основные отличия редакции драйвера sdfat для основного ядра Linux от драйвера, используемого Samsung в Android:

  • Удалён код с реализацией ФС VFAT, так как данная файловая система уже отдельно поддерживается в ядре (fs/fat);
  • Драйвер переименован с sdfat в exfat;
  • Проведён рефакторинг кода. Исходные тексты приведены к требованиям по оформлению кода для ядра Linux;
  • Выполнена оптимизация операций с метаданными, такими как создание файлов, поиск элементов ФС (lookup) и определение содержимого каталога (readdir).
  • Исправлены выявленные при дополнительном тестировании ошибки.

Напомним, что после того, как компания Microsoft опубликовала общедоступные спецификации и предоставила возможность безвозмездного использования патентов на exFAT в Linux, в экспериментальный раздел «staging» («drivers/staging/») ядра 5.4 был добавлен драйвер exFAT, также разработанный в Samsung, но основанный на устаревшем коде (версия 1.2.9). Энтузиастами из Android-прошивок был portad новый драйвер sdFAT (2.x), но компания Samsung самостоятельно решила заняться продвижением этого драйвера в основное ядро Linux. Кроме того, компанией Paragon Software был открыт альтернативный драйвер, ранее поставляемый в проприетарном наборе драйверов.

ExFAT-filsystemet skapades av Microsoft för att övervinna begränsningarna med FAT32 när det används på flash-enheter med stor kapacitet. Stöd för exFAT-filsystemet dök upp i Windows Vista Service Pack 1 och Windows XP med Service Pack 2. Den maximala filstorleken jämfört med FAT32 utökades från 4 GB till 16 exabyte, och begränsningen på den maximala partitionsstorleken på 32 GB eliminerades , för att minska fragmenteringen och öka hastigheten har en bitmapp av fria block införts, gränsen för antalet filer i en katalog har höjts till 65 tusen, och möjligheten att lagra ACL:er har tillhandahållits.

Källa: opennet.ru

Lägg en kommentar