exFAT
exFAT | |
---|---|
Разработчик | Microsoft |
Файловая система | Расширенная таблица размещения файлов (англ. Extended File Allocation Table) |
Дата представления | Ноябрь 2006 (Windows Embedded CE 6.0) |
Метка тома |
0x07 (MBR) EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT) |
Структура | |
Содержимое папок | Таблица |
Размещение файлов | Битовые поля, Связный список |
Сбойные сектора | Пометка кластеров |
Ограничения | |
Максимальный размер файла | 16 эксабайт |
Возможности | |
Диапазон дат | 1 января 1980 — 31 декабря 2107 |
Атрибуты | Только для чтения, скрытый, системный, метка тома, подкаталог, архивный |
Права доступа | Не поддерживаются[источник не указан 1518 дней] |
Поддерживается ОС |
Windows Embedded CE 6.0 (для встроенных систем) Windows XP SP2 или более поздний с обновлением KB955704, (настольная версия) Windows Vista SP1 или более поздний (настольная версия) Windows Server 2008 RTM (серверная версия) Windows 7 (сборка 7601 или более поздняя) Windows 8 Windows 10 Mac OS X с версии 10.6.5, Linux (сторонний патч, либо через FUSE драйвер) |
exFAT (от англ. Extended FAT — «расширенная FAT»), иногда называется FAT64 — проприетарная файловая система, предназначенная главным образом для флэш-накопителей. Впервые представлена фирмой Microsoft для встроенных устройств в Windows Embedded CE 6.0. Размер кластера по умолчанию для файловой системы exFAT составляет от 4 КБ до 128 КБ в зависимости от размера тома[1], максимальный допустимый по спецификации - 32 МБ[2].
Преимущества
[править | править код]Основными преимуществами exFAT перед предыдущими версиями FAT являются:
- Уменьшение количества перезаписей одного и того же сектора, что важно для флеш-накопителей, у которых ячейки памяти необратимо изнашиваются после определённого количества операций записи (это сильно смягчается выравниванием износа (англ. wear leveling), встроенным в современные USB-накопители и SD-карты). Это было основной причиной разработки exFAT.
- Теоретический лимит на размер файла 264 байт (16 эксабайт).
- Максимальный размер кластера увеличен до 225 байт (32 мегабайта).
- Улучшение распределения свободного места за счёт введения бит-карты свободного места, что может уменьшать фрагментацию диска.
- Введена поддержка списка прав доступа[3].
- Поддержка транзакций (опциональная возможность, должна поддерживаться устройством).
Недостатки и ограничения
[править | править код]- Более старые версии Windows NT, вплоть до Windows Vista без Service Pack 1, не поддерживают exFAT. Однако существуют официальные обновления от Microsoft, которые позволяют запускать exFAT на Windows XP SP2 и более поздних версиях.
- Windows Vista не способна использовать exFAT-размеченные устройства под ReadyBoost. В Windows 7 это ограничение устранено[4].
- Более сложная структура, в сравнении с FAT, вызывает большее потребление вычислительных ресурсов.
- Количество файлов в подкаталогах ограничено числом 2 796 202 (223/3). Для корневого каталога ограничения нет[5].
Поддержка
[править | править код]Поддержка exFAT имеется в Windows XP с Service Pack 2 и 3 с обновлением KB955704, Windows Vista с Service Pack 1[6], Windows Server 2008, Windows 7, Windows 8, Windows 10, в Mac OS X начиная с версии 10.6.5[7], а также Linux (требуется компиляция исходного кода Samsung).
Существует свободный драйвер exFAT в виде патча для ядра Linux, поддерживающий только чтение этой файловой системы[8]. Также существует драйвер, работающий через FUSE, в том числе для ОС FreeBSD и OpenBSD (sysutils/fuse-exfat). Данный драйвер поддерживает как чтение, так и запись[9]. Кроме того, в августе 2013 года Samsung опубликовала драйвер для ядра Linux под лицензией GPL[10].
Лицензирование
[править | править код]Лицензионный статус сначала был не определён. Однако Microsoft успешно запатентовала файловую систему FAT[11], и в феврале 2009 года подала в суд на компанию TomTom, обвиняя её в нарушении патента[12].
Существует также сторонняя реализация exFAT для Windows XP[13] / Windows Server 2003, однако она предназначена для непосредственной интеграции в дистрибутив продукта без возможности ручной установки драйвера. Данный порт выполнен на базе драйвера Windows Vista[14].
В декабре 2009 года Microsoft начала лицензировать файловую систему exFAT для сторонних производителей[15].
exFAT использовалась для sd-карт на Android устройствах (ОС которых работает на ядре Linux). Производители реализовали драйвер exFAT для linux-ядра, оставив код драйвера закрытым, но некто опубликовал этот код на сайте GitHub[16]. Опубликованный код считался украденным у компании Samsung до тех пор, пока в этом коде сообщество не нашло фрагменты кода, защищённого GPL-лицензией, что требовало раскрытия всех исходников, иначе это было воровство у сообщества со стороны компании Samsung. Через некоторое время компания Samsung выпустили код exFAT под GPL-лицензией.[источник не указан 1887 дней]
В конце августа 2019 года корпорация Microsoft после длительного внутреннего обсуждения опубликовала спецификацию ФС (удалив из нее уведомление о конфиденциальности[17]) и выступила с заявлением о поддержке инициативы по добавлению драйвера exFAT в ядро Linux. Ранее, в октябре 2018 года, корпорация присоединилась к Open Invention Network, но, вероятно, так и не передала патенты на exFAT в организацию[18]. Кроме того, в марте 2019 года она потребовала с Foxconn отчислений по патентному соглашению, заключённому в 2013 году[19][20] — речь может идти о заключённом тогда соглашении о выплатах за Android и Chrome OS.[21]
См. также
[править | править код]Примечания
[править | править код]- ↑ Default cluster size for NTFS, FAT, and exFAT (англ.), 2015 (Размер кластера по умолчанию для FAT, NTFS и exFAT)
- ↑ exFAT file system specification, Microsoft 2008-2010, 2019 (англ.) "3.1.15 SectorsPerClusterShift Field .. At most .. cluster size of 32MB"
- ↑ Windows File Systems
- ↑ exFAT Versus FAT32 Versus NTFS (27 февраля 2008). Дата обращения: 2 октября 2009. Архивировано 2 февраля 2013 года.
- ↑ Robert Shullich. Reverse Engineering the Microsoft exFAT File (англ.). The SANS Institute.
- ↑ Brandon LeBlanc. Vista SP1 Whitepaper (англ.). Microsoft (28 августа 2007). Дата обращения: 15 октября 2007. Архивировано 5 июня 2012 года.
- ↑ Файловая система ExFAT — универсальное решение для Mac OS X и Windows. Дата обращения: 5 августа 2011. Архивировано из оригинала 27 сентября 2011 года.
- ↑ Fat64 / exFat fs and Linux — fa.linux.kernel | Google Groups
- ↑ exfat — Project Hosting on Google Code
- ↑ Conservancy Helps Samsung Resolve GPL Compliance Matter Amicably — Software Freedom Conservancy
- ↑ Elizabeth Montalbano. Microsoft FAT patents upheld (англ.). Computerworld (11 января 2006). Дата обращения: 2 ноября 2008. Архивировано 5 июня 2012 года.
- ↑ Ryan Paul. Microsoft suit over FAT patents could open OSS Pandora's Box (англ.). Ars Technica. Condé Nast Publications (25 февраля 2009). Дата обращения: 9 марта 2009. Архивировано 22 августа 2011 года.
- ↑ После 26 января 2009 года она утратила смысл с вводом в обновлении KB955704 официальной поддержки данной файловой системы
- ↑ ricktendo64. exFAT File System Driver for XP/2k3, Ported from Vista . WinCert.net (28 августа 2007). Дата обращения: 1 июля 2008. Архивировано 29 февраля 2012 года.
- ↑ Microsoft лицензирует файловую систему exFAT для сторонних производителей . Ferra.ru. Ferra.ru (11 декабря 2009). Дата обращения: 13 декабря 2009.
- ↑ GitHub - dorimanx/exfat-nofuse: Android ARM Linux non-fuse read/write kernel driver for exFat and VFat Android file systems
- ↑ exFAT file system specification, Microsoft 2008-2010, 2019 (англ.)
- ↑ Microsoft опубликовала спецификацию exFAT и одобрила её поддержку в Linux . 3DNews (29 августа 2019). Дата обращения: 3 сентября 2019.
- ↑ "Foxconn rejects Microsoft patent lawsuit, says never had to pay royalties". Reuters. 19 марта 2019.
- ↑ Dr. Roy Schestowitz. Microsoft is Complaining About Android and Chrome OS (GNU/Linux) Vendor Not Paying for Microsoft Patents (Updated) (англ.). Techrights (12 марта 2019). Дата обращения: 6 июня 2020.
- ↑ Microsoft and Foxconn Parent Hon Hai Sign Patent Agreement For Android and Chrome Devices : пресс-релиз // Microsoft News Center. — Microsoft, 2013. — 17 April.
Литература
[править | править код]exFAT file system specification, Microsoft 2008-2010, 2019 (англ.)
Ссылки
[править | править код]- TFAT Overview (англ.)
- Extended FAT File System (англ.)
- Обновление Windows XP и 2003 (KB955704) для поддержки файловой системы exFAT
- Компания-разработчик NTFS-3G подписала соглашение с Microsoft, касающиеся exFAT
- Файловая система ExFAT — универсальное решение для Mac OS X и Windows
- Сравнение Fat32, NTFS, exFAT на флэш-носителях и внешних жестких дисках