Топ питань
Часова шкала
Чат
Перспективи
ExFAT
файлова система З Вікіпедії, вільної енциклопедії
Remove ads
exFAT, інколи FAT64 (від англ. Extended File Allocation Table — «розширена таблиця розміщення файлів») — пропрієтарна файлова система, розроблена корпорацією Microsoft та оптимізована для використання на різних типах флеш-накопичувачів таких як USB-флеш-накопичувачі і картки пам’яті SD.[4] Вперше представлена у листопаді 2006 року в складі Windows CE 6.0[5], exFAT задумувалася як спадкоємець застарілої FAT32 з усуненням її обмежень на розмір файлів і томів. Ця файлова система забезпечує підтримку файлів більших за 4 ГБ (ліміт FAT32) і великих носіїв, не маючи високих накладних витрат NTFS. Завдяки цьому exFAT стала стандартним файловим форматом для карт пам’яті SDXC та SDUC великої місткості (понад 32 ГБ)[6], а також часто використовується для форматування USB-накопичувачів. Первинно формат exFAT був закритим і запатентованим, однак 28 серпня 2019 року Microsoft оприлюднила офіційну специфікацію exFAT і відкрила доступ до своїх патентів для учасників Open Invention Network.[7] Це дозволило реалізувати підтримку exFAT у відкритому програмному забезпеченні (зокрема, додати драйвер exFAT до ядра Linux) і зробило exFAT фактично загальнодоступним стандартом.
Станом на 2025 рік, exFAT це єдина, сучасна, файлова система що «з коробки» підтримується всіма популярними операційними системами — Windows, Linux, MacOS, Android, iOS.
Remove ads
Історія створення
Узагальнити
Перспектива
Файлова система exFAT була створена компанією Microsoft наприкінці 2006 року, вперше реалізована у операційній системі Windows CE 6.0 для вбудованих пристроїв. У 2007–2008 рр. підтримку exFAT було додано і до настільних ОС Microsoft: драйвер включили до складу Windows Vista (починаючи з Service Pack 1), а згодом випустили оновлення для Windows XP та Windows Server 2003 (KB955704), що додавало сумісність з exFAT на цих платформах. Назва exFAT розшифровується як Extended File Allocation Table («розширена FAT»), також неофіційно цю систему інколи називали FAT64 через значно більшу розрядність адресації даних (64 біти).
Головною мотивацією розробки exFAT було розширення можливостей файлової системи FAT32 для нових носіїв інформації. Стандартна FAT32 обмежувала максимальний розмір файлу до 4 ГБ і розмір розділу до 2 ТБ (за умови розміру сектора 512 байт), що стало тісним місцем із появою все більших флеш-карт і жорстких дисків. NTFS, хоча й підтримує великі обсяги даних, не підходила для портативних носіїв через складність структури та журналювання, що може збільшувати знос пам’яті і вимагало більше ресурсів. Файлова система exFAT була спроектована як легковаге рішення «посередині»: вона зберігає простоту FAT, усуваючи її основні обмеження (розміри файлів/томів), і оптимізована для флеш-пам’яті (зменшення кількості операцій запису). Таким чином, exFAT придатна для сценаріїв, де NTFS недоцільна, але потрібна підтримка файлів більших за 4 ГБ.
У січні 2009 року Асоціація SD оголосила новий стандарт карт пам’яті SDXC (Secure Digital eXtended Capacity), який передбачав максимальну ємність карт до 2 ТБ і швидкості передачі даних до 300 МБ/с. Важливою частиною цього стандарту стала файлова система exFAT – саме її було обрано для забезпечення роботи з такими великими обсягами даних і сумісності між різними пристроями. За даними SD Association, використання exFAT у SDXC дозволяє картці пам’яті зберігати, наприклад, до 100 фільмів у HD-якості чи десятки тисяч фотографій, а також швидко передавати ці великі файли на комп’ютери і побутову електроніку. Таким чином, вже з кінця 2000-х років exFAT почала широко впроваджуватися в індустрії флеш-пам’яті та цифрових пристроїв (камери, камкордери, смартфони тощо) як наступник FAT32 для носіїв великої місткості.
Remove ads
Технічні характеристики
Узагальнити
Перспектива
exFAT зберігає загальну архітектуру сімейства FAT, проте містить низку удосконалень та змін у форматі, що відрізняють її від попередників. Основні особливості та можливості файлової системи exFAT:[8]
- Збільшені ліміти розміру даних: максимальний розмір одного файлу становить ~16 ЕБ (264 байт), а максимальний розмір тому (розділу) – ~128 ПБ (257 байт). Рекомендований Microsoft граничний розмір розділу – 512 ТБ. Це суттєве збільшення порівняно з FAT32 (де файл обмежений 4 ГБ, а том ~2 ТБ).
- Кількість файлів: один каталог exFAT може містити до 2 796 202 (223/3) файлів (це обмеження розраховане для оптимальної структури каталогу; на кореневий каталог ліміт не накладається)[9]. Загальна кількість файлів на одному томі теоретично може сягати ~4,29 млрд (232–11), що на порядок більше, ніж у FAT32. Довжина імені файлу може бути до 255 символів Unicode (UTF-16), причому exFAT не зберігає «короткі» імена 8.3 для сумісності з DOS (як це робила FAT16/32) – використовується лише повний варіант імені файлу.
- Оптимізація під флеш-пам’ять: для обліку вільного місця використовується спеціальна бітова карта (bitmap), що містить позначки вільних і зайнятих кластерів. Це рішення прискорює операції видалення та запису файлів, зменшує фрагментацію диска і знижує кількість перезаписів одних і тих самих осередків пам’яті (важливо для збільшення ресурсу флеш-накопичувачів).
- Розмір кластерів: exFAT допускає значно більші кластери даних – до 32 МБ (225 байт). Це дає змогу ефективно працювати з дуже великими томами, зменшуючи розмір таблиць розміщення файлів (FAT) та накладні витрати на їх обслуговування.
- Часові мітки: покращено точність зберігання часу зміни і створення файлу до 10 мс (у FAT32 – крок 2 с). Для часу останнього доступу введено точність до 2 с (у FAT32 взагалі зберігалася лише дата доступу). Починаючи з Windows Vista SP2, у exFAT також записується часовий пояс (зміщення від UTC) для кожної часової мітки, що дозволяє коректно інтерпретувати час створення/зміни файлів на різних пристроях.
- Додаткові можливості: exFAT передбачає (але не вимагає) підтримку списків контролю доступу (ACL) для файлів і тек та транзакційного режиму TexFAT (Transactional exFAT). TexFAT забезпечує своєрідне журналювання – дублювання важливих структур на носії – що підвищує надійність запису (корисно для випадків раптового вилучення носія). Зазначені функції наразі підтримуються переважно у вбудованих реалізаціях (Windows Embedded); у стандартних настільних версіях Windows доступу до ACL чи TexFAT для exFAT немає. Також у exFAT спрощено структуру каталогів: у підкаталогах більше не створюються службові записи
.і..(поточна та батьківська тека) на відміну від старих версій FAT.
Remove ads
Підтримка операційними системами
Узагальнити
Перспектива
В таблиці нижче узагальнено підтримку файлової системи exFAT в різних операційних системах:
Ліцензування та правові аспекти
Узагальнити
Перспектива
Файлова система exFAT була запатентованою технологією Microsoft і тривалий час поширювалася на умовах ліцензування. Microsoft володіє низкою патентів, що охоплюють окремі елементи дизайну exFAT, тому для реалізації підтримки exFAT у будь-якому пристрої чи програмі формально вимагалася ліцензія від Microsoft. У 2009 році корпорація активно відстоювала свої права на файлові системи: зокрема, в лютому 2009 р. Microsoft подала позов проти компанії TomTom за порушення патентів, пов’язаних із технологіями FAT. Цей прецедент підтвердив серйозність намірів Microsoft захищати інтелектуальну власність, що було важливим сигналом для екосистеми відкритого ПЗ, де використання закритих форматів могло привести до судових позовів.
У середині 2009 року Microsoft оголосила про програму ліцензування exFAT для сторонніх виробників. Було повідомлено про укладання низки угод: зокрема, ліцензії на використання exFAT отримали такі компанії, як Sony, Canon, Sanyo (виробники фото- та відеотехніки), а також розробник файлесистемних рішень Tuxera[15]. Компанія SanDisk як член SD Association підтримала прийняття exFAT для нового стандарту карт SDXC[15]. За даними Microsoft, ліцензійний платіж за право інтеграції exFAT в певну категорію пристроїв (наприклад, камери, відеокамери, цифрові фоторамки) становив фіксовані $300 000, тоді як для інших сфер (смартфони, ПК тощо) застосовувалась модель оплати за одиницю продукції[15]. Надалі Microsoft продовжувала пропонувати ліцензії на exFAT усім зацікавленим сторонам, поряд із продовженням ліцензування попередньої FAT32[15].
Через закритість специфікацій та патентні обмеження розвиток відкритих (open-source) драйверів exFAT тривалий час гальмувався. Більшість дистрибутивів Linux не включали підтримку exFAT і навіть не могли прямо підказувати користувачам, як її додати, через ризик порушення патентів Microsoft. Перші неофіційні реалізації з’явилися у вигляді сторонніх модулів: у 2009 р. був випущений драйвер fuse-exfat (на основі FUSE) з підтримкою читання/запису, а ентузіасти здійснювали зворотне інженерування exFAT для створення відкритої реалізації. Втім, ці проекти існували напівлегально, оскільки Microsoft вважала несанкціоноване розповсюдження драйверів exFAT порушенням своїх патентних прав.
У 2013 році стався показовий інцидент, пов’язаний із ліцензуванням exFAT. Код власницького модуля exFAT, який Samsung використовувала у прошивках Android-пристроїв, випадково став загальнодоступним на GitHub[16]. Виявилося, що Samsung не дотрималась умов GPL при використанні фрагментів коду з ядра Linux у цьому драйвері. Після втручання організації Software Freedom Conservancy, Samsung оперативно розв’язала проблему: у серпні 2013 р. компанія офіційно відкрила вихідний код свого exFAT-драйвера під ліцензією GPLv2[16]. Цей крок зняв претензії щодо порушення GPL і вперше надав спільноті відкритий код реалізації exFAT (хоч і створений зворотним інженеруванням).
Переломним моментом у правовому статусі exFAT став 2019 рік. 28 серпня 2019 р. Microsoft оголосила про публікацію специфікації[17] exFAT для загального ознайомлення[7]. Одночасно компанія повідомила, що надає право використання своїх патентів на exFAT учасникам спільноти Open Invention Network (OIN)[7] – організації, що займається патентним захистом Linux та відкритого ПЗ. Фактично, це означало відкриття exFAT для вільного використання у Linux та інших системах, що безпосередньо зняло юридичні перешкоди. Після цього в ядро Linux вже у вересні 2019 були внесені початкові патчі з підтримкою exFAT, а у листопаді 2019 вийшов реліз Linux 5.4 з інтегрованим драйвером exFAT. Таким чином, через 13 років після створення exFAT стала відкритішою: тепер виробники пристроїв і розробники ПЗ можуть впроваджувати її без ризику патентних позовів і без сплати ліцензійних відрахувань (у межах використання, покритого OIN).
Remove ads
Див. також
- FAT — сімейство файлових систем що використовувались за замовчуванням в операційних системах компанії Microsoft, починаючи з DOS
- NTFS — файлова система за замовчуванням в операційних системах Microsoft, починаючи з Windows XP
- F2FS — відкрита файлова система для флеш-пам'яті і SSD-накопичувачів від Samsung
- Перелік файлових систем
Примітки
Посилання
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads