Компания Samsung за включване в ядрото на Linux набор от пачове с реализация на нов драйвер exFAT, основан на актуалната кодова база „sdfat“, развивана за фърмуери на Android смартфони Samsung. Ако пачовете бъдат приети, те ще влязат в състава на ядрото на Linux 5.6, чийто релиз се очаква след 2-3 месеца. В сравнение с вече добавения в ядрото драйвер exFAT, новият драйвер осигурява повишение на производителността приблизително с 10%.
Основните разлики на редакцията на драйвера sdfat за основното ядро на Linux от драйвера, използван от Samsung в Android:
- Премахнат е кодът с реализация на FS VFAT, тъй като тази файлова система вече отделно се поддържа в ядрото (fs/fat);
- Драйверът е преименуван от sdfat на exfat;
- Извършен е рефакторинг на кода. Изходните текстове са приведени към изискванията за форматиране на кода за ядрото на Linux;
- Извършена е оптимизация на операциите с метаданни, като създаване на файлове, търсене на елементи от FS (lookup) и определяне на съдържанието на директория (readdir).
- Поправени са установените при допълнителното тестване грешки.
Напомняме, че след като компанията Microsoft обяви публични спецификации и предостави възможност за безплатно използване на патенти за exFAT в Linux, в експерименталния раздел „staging“ („drivers/staging/“) на ядрото 5.4 беше добавен драйвер exFAT, също разработен в Samsung, но основан на (версия 1.2.9). Ентусиасти от Android фърмуерите разработиха нов драйвер sdFAT (2.x), но компанията Samsung сама реши да се заеме с промотирането на този драйвер в основното ядро на Linux. Освен това, компанията Paragon Software откри , преди предоставян в проприетарния набор от драйвери.
Файловата система exFAT беше създадена от Microsoft, за да отстрани ограниченията на FAT32 при използването ѝ на флаш устройства с голям капацитет. Поддръжката на файлова система exFAT се появи в Windows Vista Service Pack 1 и Windows XP с Service Pack 2. Максималният размер на файла в сравнение с FAT32 беше увеличен от 4 Гб на 16 ексабайта, премахнато е ограничението на максималния размер на дяла от 32 Гб, за намаляване на фрагментацията и увеличаване на скоростта е введена битова карта на свободните блокове, ограничението на броя файлове в една директория е повишено до 65 хил., предвидена е възможност за съхранение на ACL.
Източник: opennet.ru
