Таблица размещения файлов ( FAT ) - файловая система, разработанная для персональных компьютеров. Первоначально разработанный в 1977 году для использования на дискетах , он был адаптирован для использования на жестких дисках и других устройствах. Он часто поддерживается из соображений совместимости текущими операционными системами для персональных компьютеров и многих мобильных устройств и встроенных систем , что позволяет обмениваться данными между разнородными системами. [3] Для увеличения емкости жестких дисков потребовалось три основных варианта: FAT12 , FAT16 и FAT32.. Стандарт FAT также был расширен другими способами, при этом в целом сохранена обратная совместимость с существующим программным обеспечением.
Разработчики) | Microsoft , NCR , SCP , IBM , Compaq , Digital Research , Novell , Caldera |
---|---|
ФИО | Таблица размещения файлов |
Варианты | 8-битные FAT, FAT12 , FAT16 , FAT16B , FAT32 , ExFAT , FATX , FAT + |
Введено | 1977 с автономным диском BASIC-80 |
Идентификатор раздела | MBR / EBR : FAT12: ea (расширенный атрибут) FAT16: ea FAT32: ea BDP : 0x01 0x04 0x06 0x0E 0x0B 0x0C EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
Структуры | |
Содержимое каталога | Таблица |
Размещение файлов | Связанный список |
Плохие блоки | Теги кластера |
Пределы | |
Максимум. размер тома | FAT12: 32 МБ (256 МБ для кластеров по 64 КБ) FAT16: 2 ГБ (4 ГБ для кластеров по 64 КБ) FAT32: 2 ТБ (16 ТБ для секторов по 4 КБ ) |
Максимум. размер файла | 4 294 967 295 байт (4 ГБ - 1) с FAT16B и FAT32 [1] |
Максимум. количество файлов | FAT12: 4068 для кластеров 8 КБ FAT16: 65 460 для кластеров 32 КБ FAT32: 268 173 300 для кластеров 32 КБ |
Максимум. длина имени файла | 8.3 имя файла или 255 символов UCS-2 при использовании LFN [nb 1] |
Функции | |
Даты записаны | Дата / время изменения, дата / время создания (только для DOS 7.0 и выше), дата доступа (доступно только при включенном ACCDATE ), [2] дата / время удаления (только с DELWATCH 2) |
Диапазон дат | 1980-01-01 по 2099-12-31 ( 2107-12-31 ) |
Разрешение даты | 2 секунды для времени последнего изменения, 10 мс для времени создания, 1 день для даты доступа, 2 секунды для времени удаления |
Вилки | Не изначально |
Атрибуты | Только для чтения , Скрытый , Система , Том , Каталог , Архив |
Разрешения файловой системы | FAT12 / FAT16: права доступа к файлам, каталогам и томам для чтения , записи , выполнения , удаления только с DR-DOS , PalmDOS , Novell DOS , OpenDOS , FlexOS , 4680 OS , 4690 OS , Concurrent DOS , Multiuser DOS , System Manager , REAL / 32 (Право выполнения только с FlexOS, 4680 OS, 4690 OS; пароли отдельных файлов / каталогов не с FlexOS, 4680 OS, 4690 OS; классы прав доступа World / Group / Owner только с загруженной многопользовательской безопасностью) FAT32: Частично, только с DR -DOS, REAL / 32 и 4690 OS |
Прозрачное сжатие | FAT12 / FAT16: на том, SuperStor , Stacker , DoubleSpace , DriveSpace FAT32: Нет |
Прозрачное шифрование | FAT12 / FAT16: только по объему с DR-DOS FAT32: нет |
FAT больше не является файловой системой по умолчанию для компьютеров Microsoft Windows . [4]
Файловые системы FAT по-прежнему часто встречаются на гибких дисках, флеш- дисках и других твердотельных картах и модулях памяти (включая USB-накопители ), а также на многих портативных и встроенных устройствах. FAT - это стандартная файловая система для цифровых фотоаппаратов согласно спецификации DCF .
Обзор
Концепции
Файловая система использует индексную таблицу, хранящуюся на устройстве, для идентификации цепочек областей хранения данных, связанных с файлом, таблицей размещения файлов ( FAT ). FAT статически выделяется во время форматирования. Таблица представляет собой связанный список записей для каждого кластера , непрерывную область дискового хранилища. Каждая запись содержит либо номер следующего кластера в файле, либо маркер, указывающий конец файла, неиспользуемое дисковое пространство или специальные зарезервированные области диска. Корневой каталог диска содержит номер первого кластера каждого файла в каталоге. Затем операционная система может пройти через FAT, ища номер кластера каждой последующей части дискового файла в виде цепочки кластеров до тех пор, пока не будет достигнут конец файла. Подкаталоги реализованы как специальные файлы, содержащие записи каталогов соответствующих файлов.
Каждая запись в связанном списке FAT представляет собой фиксированное количество битов: 12, 16 или 32. Максимальный размер файла или диска, к которому можно получить доступ, является произведением наибольшего числа, которое может быть сохранено в записях (меньше несколько значений, зарезервированных для обозначения нераспределенного пространства или конца списка) и размера дискового кластера. Даже если для расширения файла требуется только один байт памяти, ему должен быть выделен весь кластер, поэтому большие кластеры тратят много места на диске, если имеется большое количество небольших файлов.
Первоначально разработанная как 8-битная файловая система, максимальное количество кластеров должно увеличиваться по мере увеличения емкости жесткого диска, поэтому количество битов, используемых для идентификации каждого кластера, увеличилось. Последовательные основные варианты формата FAT названы по количеству битов элемента таблицы: 12 ( FAT12 ), 16 ( FAT16 ) и 32 ( FAT32 ).
Использует
Файловая система FAT используется для компьютеров с 1977 года и до сих пор часто используется во встроенных системах. Совместимые файловые системы упрощают обмен данными, например, между настольными компьютерами и портативными устройствами. Файловые системы FAT используются по умолчанию для съемных носителей, таких как дискеты , супер-дискеты , карты памяти и флэш-памяти или USB-накопители . FAT поддерживается портативными устройствами, такими как КПК , цифровые фотоаппараты , видеокамеры , медиаплееры и мобильные телефоны. В то время как FAT12 используется на гибких дисках, FAT16 и FAT32 обычно находятся на более крупных носителях.
FAT также использовалась на жестких дисках в эпоху DOS и Windows 9x . Microsoft представила новую файловую систему NTFS с платформой Windows NT в 1993 году, но FAT оставалась стандартом для домашних пользователей до появления Windows XP на базе NT в 2001 году. FAT по-прежнему используется на жестких дисках, которые предполагается использовать. несколькими операционными системами, например, в общих средах Windows, Linux и DOS.
Многие операционные системы обеспечивают поддержку носителей в формате FAT с помощью встроенных или сторонних обработчиков файловой системы.
DCF файловая система , принятая почти во всех цифровых камерах с 1998 года определяет логическую файловую систему с 8.3 имен файлов и позволяет использовать либо FAT12, FAT16, FAT32 или EXFAT обязательным для его физического уровня для совместимости. [5]
FAT также используется внутри системного раздела EFI на этапе загрузки компьютеров, совместимых с EFI . [6] Скрытые файловые системы FAT также используются в загрузочном разделе UEFI на современных ПК.
Для гибких дисков FAT стандартизирован как ECMA- 107 [7] и ISO / IEC 9293: 1994 [8] (заменяющий ISO 9293: 1987 [9] ). Эти стандарты охватывают FAT12 и FAT16 с поддержкой только коротких файлов 8.3 ; длинные имена файлов с VFAT были частично запатентованы . [10]
Номенклатура
«Файловая система FAT» означает FAT12 , FAT16 и FAT32 . Утилиты операционной системы могут не определять, какая версия будет использоваться для форматирования устройства.
« FAT16 » относится как к исходной группе файловых систем FAT с записями кластера шириной 16 бит, так и к более поздним вариантам (« FAT16B ») с записями 32-битных секторов. Значения, хранящиеся в блоке параметров диска, могут использоваться для идентификации файловой структуры.
« VFAT » - это необязательное расширение для длинных имен файлов, которое может работать поверх любой файловой системы FAT. Тома с длинными именами файлов VFAT могут быть прочитаны также операционными системами, не поддерживающими расширение VFAT.
Общий тип файловой системы (FAT12, FAT16 или FAT32) определяется шириной записей кластера в FAT. Конкретные пороговые значения количества кластеров, хранящиеся в блоке параметров диска, определяют, какой тип FAT используется. [6] Другие свойства запоминающего устройства, такие как размер, формат блока параметров или имя файловой системы, не могут надежно использоваться для определения типа файловой системы. [6]
Том FAT12 или FAT16 можно определить с помощью « FAT32 EBPB », обычно используемого для томов FAT32. [nb 2] Идентификаторы разделов не используются для определения типа файловой системы сами по себе. [11]
Типы
Исходная 8-битная FAT
Разработчики) | Microsoft , NCR , SCP |
---|---|
ФИО | 8-битная таблица размещения файлов |
Введено | 1977/1978: NCR Basic +6 для NCR 1978: автономный диск BASIC-80 (16-байтовые записи каталога) [12] [13] (1978: автономный диск BASIC-86 только для внутреннего использования) 1979-06-04: автономный диск BASIC -86 для SCP (16-байтовые записи каталога) 1979: MIDAS (32-байтовые записи каталога) |
Пределы | |
Максимум. размер файла | 8 МБ |
Детализация размера файла | уровень детализации записи (128 байт) [12] [13] |
Максимум. длина имени файла | 6.3 имя файла (двоичные файлы), 9 символов (файлы ASCII) [12] [13] |
Максимум. глубина каталога | нет подкаталогов |
Допустимые символы в именах файлов | ASCII - ( 0x00 и 0xFF не допускается в первом символе) [12] [13] |
Функции | |
Даты записаны | Нет |
Атрибуты | Защита от записи, преобразование EBCDIC , чтение после записи, двоичный (случайный, а не последовательный файл) [12] [13] |
Исходный файл FAT система (или структура FAT , так как она называлась первоначально) был разработан и кодируются Марк Макдональд , [14] на основе серии обсуждений между Макдональд и Билл Гейтс . [14] Она была введена с 8-битовых элементов таблицы [12] [13] [14] (и действительные числа кластеров данных до 0xBF
[12] , [13] ) в качестве предшественника для Microsoft «с изолированную диска BASIC-80 для 8080 основанное преемником [NB 3] в модели NCR 7200 В. ввода данных терминала, оснащен 8-дюймовым (200 мм) гибких дисков, в 1977 году [15] или 1978 [NB 3] в 1978 году Standalone Disk Basic- 80 был перенесен на 8086 с помощью эмулятора на DEC PDP-10 , [16] так как в то время не было реальных систем 8086. Файл FAT система была также использована в компании Microsoft МДО / MIDAS , [14] операционная система для 8080 / Z80 платформ , написанных Макдональд с 1979 г. Standalone Disk BASIC версии поддерживаются три жирами, [12] [13] [17] в то время как это был параметром для MIDAS. Сообщается, что MIDAS также был подготовлен для поддержки 10-битных, 12-битных и 16-битных вариантов FAT. В то время как размер записей каталога составлял 16 байтов в Standalone Disk BASIC , [12] [13] MIDAS вместо этого занимал 32 байта на запись.
FAT12
Разработчики) | SCP , Microsoft , IBM , Digital Research , Novell |
---|---|
ФИО | 12-битная таблица размещения файлов |
Введено | 1980-07 ( QDOS 0.10 , 16-байтовые записи каталога) 1981-02-25 ( 86-DOS 0.42 , 32-байтовые записи каталога , несколько зарезервированных секторов) c. 1981–08 / 10 ( PC DOS 1.0 , 32-байтовые записи каталога, 1 зарезервированный сектор) 1982-03-03 ( MS-DOS 1.25 , 32-байтовые записи каталога, 1 зарезервированный сектор) |
Идентификатор раздела | MBR / EBR : FAT12 : ea BDP : 0x01 EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
Пределы | |
Максимум. размер тома | 16 МБ (с кластерами 4 КБ) 32 МБ (с кластерами 8 КБ) |
Максимум. размер файла | ограничен размером тома |
Детализация размера файла | 1 байт |
Максимум. количество файлов | 4068 для кластеров 8 КБ |
Максимум. длина имени файла | 8.3 имя файла с OEM символов, 255 UCS-2 символов [NB 1] при использовании LFN |
Максимум. глубина каталога | 32 уровня или 66 символов (с CDS ), 60 уровней и более (без CDS) |
Функции | |
Даты записаны | Дата изменения (не для 86-DOS до 0.42), время изменения (не для PC DOS 1.0 и 86-DOS), дата / время создания (только для DOS 7.0 и выше), дата доступа (доступно только при включенном ACCDATE ), [2 ] дата / время удаления (только с DELWATCH 2) |
Диапазон дат | 1980-01-01 по 2099-12-31 ( 2107-12-31 ) |
Разрешение даты | 2 секунды для времени последнего изменения, 10 мс для времени создания, 1 день для даты доступа, 2 секунды для времени удаления |
Атрибуты | Только для чтения (начиная с DOS 2.0), Скрытый , Системный , Том (начиная с MS-DOS 1.28 и PC DOS 2.0 ), Каталог (начиная с MS-DOS 1.40 и PC DOS 2.0), Архив (начиная с DOS 2.0) |
Разрешения файловой системы | Права доступа к файлам, каталогам и томам для чтения , записи , выполнения и удаления только с DR-DOS , PalmDOS , Novell DOS , OpenDOS , FlexOS , 4680 OS , 4690 OS , Concurrent DOS , Multiuser DOS , System Manager , REAL / 32 (Execute право только с FlexOS, 4680 OS, 4690 OS; пароли отдельных файлов / каталогов не с FlexOS, 4680 OS, 4690 OS; классы прав World / Group / Owner только с загруженной многопользовательской безопасностью) |
Прозрачное сжатие | Объемный, SuperStor , Stacker , DoubleSpace , DriveSpace |
Прозрачное шифрование | Только по объему с DR-DOS |
В период с апреля по август 1980 г., заимствуя концепцию FAT для собственной операционной системы SCP 8086 QDOS 0.10 , [16] Тим Патерсон расширил элементы таблицы до 12 бит , [18] сократил количество FAT до двух, пересмотрел семантику некоторых из них. зарезервированные значения кластера и изменили структуру диска, так что корневой каталог теперь находился между FAT и областью данных для его реализации FAT12 . Патерсон также увеличил ограничение длины файла [12] [13] из девяти символов (6.3) до одиннадцати символов для поддержки имен файлов и блоков управления файлами в стиле CP / M 8.3 . Формат, используемый в предшественнике 8-битной файловой системы Microsoft Standalone Disk BASIC, не поддерживался QDOS. К августу 1980 года QDOS была переименована в 86-DOS . [19] Начиная с 86-DOS 0.42 , размер и структура записей каталога были изменены с 16 байтов на 32 байта [20] , чтобы добавить отметку даты файла [20] и увеличить теоретический предел размера файла сверх предыдущего предела. 16 МБ. [20] 86-DOS 1.00 стала доступна в начале 1981 года. Позже, в 1981 году, 86-DOS превратилась в Microsoft MS-DOS и IBM PC DOS . [14] [18] [21] Возможность чтения ранее отформатированных томов с 16-байтовыми записями каталога [20] была исключена в MS-DOS 1.20 .
FAT12 использовала 12-битные записи для адресов кластера; некоторые значения были зарезервированы для обозначения конца цепочки кластеров, для обозначения неиспользуемых областей диска или для других целей, поэтому максимальное количество кластеров было ограничено 4078. [22] [23] Для экономии дискового пространства - два. 12-битные записи FAT использовали три последовательных 8-битных байта на диске, что требовало манипуляций для распаковки 12-битных значений. Этого было достаточно для оригинальных дисководов гибких дисков и небольшого жесткого диска до 32 мегабайт. Версия FAT16B, доступная с DOS 3.31, поддерживала 32-битные номера секторов и поэтому увеличила ограничение на размер тома.
Все управляющие структуры помещаются внутри первой дорожки, чтобы избежать движения головы во время операций чтения и записи. Любой сбойный сектор в области управляющих структур сделает диск непригодным для использования. Инструмент форматирования DOS полностью отклонил такие диски. Плохие сектора допускались только в области данных файла. Кластеры, содержащие поврежденные сектора, были помечены как непригодные для использования с зарезервированным значением 0xFF7
.
В то время как 86-DOS поддерживал три формата дисков (250,25 КБ, 616 КБ и 1232 КБ с идентификаторами FAT 0xFF
и 0xFE
на 8-дюймовых (200 мм) дисководах гибких дисков, IBM PC DOS 1.0 , выпущенная вместе с исходным персональным компьютером IBM в 1981 году, поддерживала только 8-секторный формат гибких дисков с отформатированной емкостью 160 КБ (FAT ID 0xFE
) для односторонних 5,25-дюймовых дисководов гибких дисков, а в PC DOS 1.1 добавлена поддержка двустороннего формата с 320 КБ (FAT ID 0xFF
). Представлена PC DOS 2.0 поддержка форматов 9-секторных гибких дисков с размером 180 КБ (FAT ID 0xFC
) и 360 КБ (FAT ID 0xFD
).
Записи каталогов 86-DOS 1.00 и PC DOS 1.0 включали только одну дату - дату последнего изменения. PC DOS 1.1 добавил время последнего изменения. Атрибуты файла PC DOS 1.x включают скрытый бит и системный бит, а остальные шесть битов не определены. В то время DOS не поддерживала подкаталоги, но обычно на дискете было всего несколько десятков файлов.
PC XT был первым компьютером с жестким диском от IBM, и PC DOS 2.0 поддерживает , что жесткий диск с FAT12 ( FAT ID 0xF8
). Фиксированное предположение о 8 секторах на кластер на жестких дисках практически ограничивало максимальный размер раздела до 16 МБ для 512-байтовых секторов и кластеров 4 КБ.
BIOS Parameter Block ( ВРВ ) была введена с PC DOS 2.0 , а также, и эта версия также добавлена только для чтения, архив , метки тома , а также каталог атрибутов бит для иерархических подкаталогов. [24]
MS-DOS 3.0 представила поддержку 5.25-дюймовых дискет с высокой плотностью записи 1,2 МБ (дескриптор носителя 0xF9
), у которых, в частности, было 15 секторов на дорожку, следовательно, больше места для файлов FAT.
FAT12 по-прежнему используется на всех распространенных гибких дисках , включая диски 1,44 МБ и более поздние версии 2,88 МБ (байт дескриптора носителя 0xF0
).
Исходный FAT16
Разработчики) | Microsoft , IBM , Digital Research , Novell |
---|---|
ФИО | 16-битная таблица размещения файлов (с записями 16-битных секторов) |
Введено | 1984-08-14 (PC DOS 3.0) 1984-08 (MS-DOS 3.0) |
Идентификатор раздела | MBR / EBR : FAT16 : ea BDP : 0x04 EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
Пределы | |
Максимум. размер файла | ограничен размером тома |
Детализация размера файла | 1 байт |
Максимум. количество файлов | 65 536 для кластеров по 32 КБ |
Максимум. длина имени файла | 8.3 имя файла с OEM символов, 255 UCS-2 символов [NB 1] при использовании LFN |
Максимум. глубина каталога | 32 уровня или 66 символов (с CDS ), 60 уровней и более (без CDS) |
Функции | |
Даты записаны | Дата / время изменения, дата / время создания (только для DOS 7.0 и выше), дата доступа (доступно только при включенном ACCDATE ), [2] дата / время удаления (только с DELWATCH 2) |
Диапазон дат | 1980-01-01 по 2099-12-31 ( 2107-12-31 ) |
Разрешение даты | 2 секунды для времени последнего изменения, 10 мс для времени создания, 1 день для даты доступа, 2 секунды для времени удаления |
Атрибуты | Только для чтения , Скрытый , Система , Том , Каталог , Архив |
Разрешения файловой системы | Права доступа к файлам, каталогам и томам для чтения , записи , выполнения и удаления только с DR-DOS , PalmDOS , Novell DOS , OpenDOS , FlexOS , 4680 OS , 4690 OS , Concurrent DOS , Multiuser DOS , System Manager , REAL / 32 (Execute право только с FlexOS, 4680 OS, 4690 OS; пароли отдельных файлов / каталогов не с FlexOS, 4680 OS, 4690 OS; классы прав World / Group / Owner только с загруженной многопользовательской безопасностью) |
Прозрачное сжатие | Объемный, SuperStor , Stacker , DoubleSpace , DriveSpace |
Прозрачное шифрование | Только по объему с DR-DOS |
В 1984 году IBM выпустила PC AT , который требовал от PC DOS 3.0 доступа к жесткому диску объемом 20 Мбайт. [25] [26] Microsoft параллельно представила MS-DOS 3.0. Адреса кластеров были увеличены до 16-разрядных, что позволяет использовать до 65 524 кластера на том. Однако максимально возможное количество секторов и максимальный размер раздела 32 МБ не изменились. Хотя адреса кластера были 16-битными, этот формат не был тем, что сегодня обычно понимается как FAT16 . Тип раздела 0x04
указывает на эту форму FAT16 с менее чем 65536 секторами (менее 32 МБ для размера сектора 512). Преимущество FAT16 заключалось в использовании кластеров меньшего размера, что делало использование диска более эффективным, особенно для большого количества файлов размером всего несколько сотен байт.
Поскольку MS-DOS 3.0 отформатировала все разделы размером 16–32 МБ в формате FAT16, жесткий диск объемом 20 МБ, отформатированный в MS-DOS 3.0, был недоступен для MS-DOS 2.0. [27] MS-DOS 3.0 - MS-DOS 3.30 по-прежнему могла получить доступ к разделам FAT12 размером менее 15 МБ, но требовала, чтобы все разделы размером 16–32 МБ были FAT16, и поэтому не мог получить доступ к разделам MS-DOS 2.0 в этом диапазоне размеров. MS-DOS 3.31 и выше снова может получить доступ к разделам FAT12 размером 16–32 МБ.
Логический секторный FAT
Реализации FAT12 и FAT16 в MS-DOS и PC DOS не могли получить доступ к разделам диска размером более 32 мегабайт. Некоторые производители разработали свои собственные варианты FAT в своих OEM-версиях MS-DOS. [28]
Некоторые поставщики ( AST и NEC [28] ) поддерживали восемь записей первичных разделов вместо стандартных четырех в своей расширенной основной загрузочной записи ( MBR ) и адаптировали MS-DOS для использования более одного первичного раздела.
Другие поставщики работали над ограничениями на размер тома, налагаемыми 16-битными записями секторов, увеличивая видимый размер секторов, с которыми работает файловая система. Эти логические секторы были больше (до 8192 байтов), чем размер физического сектора (все еще 512 байтов) на диске. DOS-BIOS или системный BIOS затем объединят несколько физических секторов в логические секторы, с которыми файловая система будет работать.
Эти изменения были прозрачны для реализации файловой системы в ядре DOS. Базовый DOS-BIOS преобразовал эти логические секторы в физические секторы в соответствии с информацией о разделах и физической геометрией диска.
Недостатком этого подхода было увеличение памяти, используемой для буферизации секторов и снятия блокировки. Поскольку более старые версии DOS не могли использовать большие логические секторы, OEM-производители ввели новые идентификаторы разделов для своих вариантов FAT, чтобы скрыть их от готовых выпусков MS-DOS и PC DOS. Известные идентификаторы разделов для логических секторных файлов FAT включают: 0x08
( Commodore MS-DOS 3.x), 0x11
( Leading Edge MS-DOS 3.x), 0x14
(AST MS-DOS 3.x), 0x24
(NEC MS-DOS 3.30 [28] ) , 0x56
( AT&T MS-DOS 3.x), 0xE5
( Tandy MS-DOS), 0xF2
( Sperry IT MS-DOS 3.x, Unisys MS-DOS 3.3 - также используется Digital Research DOS Plus 2.1). [29] OEM-версии, такие как Toshiba MS-DOS, Wyse MS-DOS 3.2 и 3.3, [30], а также Zenith MS-DOS, также, как известно, использовали логическое разделение на секторы. [31]
Хотя эти варианты FAT нестандартны и неоптимальны, они полностью соответствуют спецификациям самой файловой системы. Следовательно, даже если проблемы по умолчанию MS-DOS и PC DOS не смогли с ними справиться, большинство этих специфичных для поставщика вариантов FAT12 и FAT16 можно смонтировать с помощью более гибких реализаций файловой системы в операционных системах, таких как DR-DOS, просто путем изменения идентификатора раздела на один из распознаваемых типов. [nb 4] Кроме того, если их больше не нужно распознавать в исходных операционных системах, существующие разделы можно «преобразовать» в тома FAT12 и FAT16, более совместимые с версиями MS-DOS / PC DOS 4.0–6.3, которые не поддерживают поддержка размеров секторов, отличных от 512 байт, [32] путем переключения на BPB с 32-битной записью для количества секторов, как введено с DOS 3.31 (см. FAT16B ниже), сохраняя размер кластера и уменьшая размер логического сектора в BPB уменьшается до 512 байт, в то же время увеличивая количество логических секторов на кластер, зарезервированных логических секторов, общего количества логических секторов и логических секторов на FAT с тем же коэффициентом.
Параллельной разработкой в MS-DOS / PC DOS, которая позволила увеличить максимально возможный размер FAT, было введение нескольких разделов FAT на жестком диске. Чтобы разрешить использование большего количества разделов FAT совместимым образом, в PC DOS 3.2 (1986) был введен новый тип раздела - расширенный раздел (EBR) [14], который является контейнером для дополнительного раздела, называемого логическим диском . Начиная с PC DOS 3.3 (апрель 1987 г.) существует еще один дополнительный расширенный раздел, содержащий следующий логический диск и т. Д. MBR жесткого диска может либо определить до четырех первичных разделов или расширенного раздела в дополнении к до трех основных разделов.
Финальная FAT16
Разработчики) | Compaq , Digital Research , IBM , Microsoft , Novell |
---|---|
ФИО | 16-битная таблица размещения файлов (с записями 32-битных секторов) |
Введено | 1987-11 ( Compaq MS-DOS 3.31 ) 1988-06-28 ( DR DOS 3.31 ) 1988 ( IBM DOS 4.0 ) 1988 ( OS / 2 1.1 ) 1988 ( MS-DOS 4.0 ) |
Идентификатор раздела | MBR / EBR : FAT16B : ( LBA ), ea BDP : 0x06 0x0E EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
Пределы | |
Мин. размер тома | 8 МБ (с 128-байтовыми секторами) 32 МБ (с 512- байтовыми секторами) 256 МБ (с секторами по 4 КБ ) |
Максимум. размер тома | 2 ГБ (с кластерами по 32 КБ ) 4 ГБ (с кластерами по 64 КБ) (NT 4, PTS-DOS, EDR-DOS) 8 ГБ (с кластерами по 128 КБ и секторами 1 или 2 КБ) (только NT 4 и EDR-DOS ) 8 ГБ (с кластерами 128 КБ и секторами по 512 байт) (только EDR-DOS) 16 ГБ (с кластерами по 256 КБ и секторами 2 или 4 КБ) (только NT 4) |
Максимум. размер файла | 2 147 483 647 байт (2 ГБ - 1) (без LFS ) 4 294 967 295 байт (4 ГБ - 1) (с LFS ) ограничено только размером тома (с FAT16 + [33] ) |
Детализация размера файла | 1 байт |
Максимум. количество файлов | 65460 для кластеров по 32 КБ |
Максимум. длина имени файла | 8.3 имя файла с OEM символов, 255 UCS-2 символов [NB 1] при использовании LFN |
Максимум. глубина каталога | 32 уровня или 66 символов (с CDS ), 60 уровней и более (без CDS) |
Функции | |
Даты записаны | Дата / время изменения, дата / время создания (только для DOS 7.0 и выше), дата доступа (доступно только при включенном ACCDATE ), [2] дата / время удаления (только с DELWATCH 2) |
Диапазон дат | 1980-01-01 по 2099-12-31 ( 2107-12-31 ) |
Разрешение даты | 2 секунды для времени последнего изменения, 10 мс для времени создания, 1 день для даты доступа, 2 секунды для времени удаления |
Атрибуты | Только для чтения , Скрытый , Система , Том , Каталог , Архив |
Разрешения файловой системы | Права доступа к файлам, каталогам и томам для чтения , записи , выполнения и удаления только с DR-DOS , PalmDOS , Novell DOS , OpenDOS , FlexOS , 4680 OS , 4690 OS , Concurrent DOS , Multiuser DOS , System Manager , REAL / 32 (Execute право только с FlexOS, 4680 OS, 4690 OS; пароли отдельных файлов / каталогов не с FlexOS, 4680 OS, 4690 OS; классы прав World / Group / Owner только с загруженной многопользовательской безопасностью) |
Прозрачное сжатие | Объемный, SuperStor , Stacker , DoubleSpace , DriveSpace |
Прозрачное шифрование | Только по объему с DR-DOS |
В ноябре 1987 года Compaq Personal Computer DOS 3.31 (модифицированная OEM-версия MS-DOS 3.3, выпущенная Compaq вместе с их машинами) представила то, что сегодня известно просто как формат FAT16 , с увеличением количества секторов 16-битного диска до 32 биты в BPB. Хотя изменения на диске были незначительными, весь драйвер диска DOS пришлось преобразовать для использования 32-битных номеров секторов, что осложнялось тем, что он был написан на 16-битном языке ассемблера . Результат был первоначально назван Большой файловой системой DOS 3.31 . Microsoft «s DSKPROBE
инструмент относится к типу , 0x06
как BigFAT , [34] , тогда как некоторые старые версии FDISK
описал его как BIGDOS . Технически он известен как FAT16B .
Поскольку более старые версии DOS не были предназначены для работы с более чем 65535 секторами, было необходимо ввести новый тип раздела для этого формата, чтобы скрыть его от проблем DOS до версии 3.31. Исходная форма FAT16 (менее 65536 секторов) имела тип раздела 0x04
. Для работы с дисками большего размера 0x06
был введен тип для обозначения 65536 или более секторов. В дополнение к этому, драйвер диска был расширен, чтобы справиться с более чем 65535 секторами. Единственное другое различие между исходной FAT16 и более новым форматом FAT16B - это использование более нового формата BPB с 32-битной записью сектора. Следовательно, более новые операционные системы, поддерживающие формат FAT16B, могут также работать с исходным форматом FAT16 без каких-либо необходимых изменений.
Если разделы, которые будут использоваться выпусками DOS до DOS 3.31, должны быть созданы современными инструментами, единственными критериями, которые теоретически необходимо удовлетворять, является количество секторов менее 65536 и использование старого идентификатора раздела ( 0x04
). На практике, однако, типовые 0x01
и 0x04
первичные разделы не должны физически располагаться за пределами первых 32 МБ диска из-за других ограничений в MS-DOS 2.x, которые иначе не справились бы с ними.
В 1988 году улучшение FAT16B стало более широко доступным через DR DOS 3.31, PC DOS 4.0, OS / 2 1.1 и MS-DOS 4.0. Ограничение на размере раздела было продиктовано 8-битным подписанным подсчетом секторов в кластер, который первоначально имел максимальную мощность, из-два значения 64. С стандартного размером жесткого диска сектором 512 байт, это дает максимум 32 Размер кластера КБ, тем самым фиксируя «окончательный» предел для размера раздела FAT16 на уровне 2 ГБ для размера сектора 512. На магнитооптических носителях, которые могут иметь секторы 1 или 2 КБ вместо 0,5 КБ, этот предел размера пропорционально больше.
Намного позже Windows NT увеличила максимальный размер кластера до 64 КБ, считая количество секторов на кластер беззнаковым. Однако полученный формат был несовместим с какой-либо другой реализацией FAT того времени и приводил к большей внутренней фрагментации . Windows 98 , SE и ME также поддерживают чтение и запись этого варианта, но дисковые утилиты с ним не работают, и некоторые службы FCB недоступны для таких томов. Это способствует запутанной ситуации совместимости.
До 1995 года версии DOS обращались к диску только через адресацию CHS . Когда MS-DOS 7.0 / Windows 95 представили доступ к диску LBA , разделы могли начать физически располагаться вне первого c. 8 ГБ этого диска и, следовательно, вне досягаемости традиционной схемы адресации CHS. Разделы, частично или полностью расположенные за барьером CHS, поэтому должны были быть скрыты от операционных систем без поддержки LBA, используя 0x0E
вместо этого новый тип раздела в таблице разделов. Разделы FAT16, использующие этот тип раздела, также называются FAT16X . [35] Единственное отличие, по сравнению с предыдущими разделами FAT16, заключается в том, что некоторые связанные с CHS геометрические записи в записи BPB, а именно количество секторов на дорожку и количество головок, могут не содержать или вводить в заблуждение значения и не должны использоваться.
Количество записей корневого каталога, доступных для FAT12 и FAT16, определяется при форматировании тома и сохраняется в 16-битном поле. Для данного числа RDE
и размера сектора SS
количество RDS
секторов корневого каталога равно RDS=ceil((RDE×32)/SS)
и RDE
обычно выбирается для заполнения этих секторов, т RDE*32=RDS*SS
. Е. Носители FAT12 и FAT16 обычно используют 512 записей корневого каталога на не гибких дисках. Некоторые сторонние инструменты, такие как mkdosfs , позволяют пользователю устанавливать этот параметр. [36]
FAT32
Разработчики) | Microsoft , Caldera |
---|---|
Введено | Август 1996 г. ( Windows 95 OSR2 ) |
Идентификатор раздела | MBR / EBR : FAT32 : ( LBA ), например, BDP : 0x0B 0x0C EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 |
Пределы | |
Мин. размер тома | 32 МБ -4,5 КБ (с 65525 кластерами и 512-байтовыми секторами) 256 МБ-36 КБ (с 65525 кластерами и секторами 4 КБ ) |
Максимум. размер тома | 2 ТБ (с секторами по 512 байт) 8 ТБ (с секторами по 2 КБ и кластерами по 32 КБ) 16 ТБ (с секторами по 4 КБ и кластерами по 64 КБ) |
Максимум. размер файла | 2 147 483 647 байт (2 ГБ - 1) (без LFS ) 4 294 967 295 байт (4 ГБ - 1) [1] (с LFS ) 274 877 906 943 байта (256 ГБ - 1) (только с FAT32 + [33] ) |
Детализация размера файла | 16 байт |
Максимум. количество файлов | 268 173 300 для кластеров по 32 КБ |
Максимум. длина имени файла | 8.3 имя файла с OEM символов, 255 UCS-2 символов [NB 1] при использовании LFN |
Максимум. глубина каталога | 32 уровня или 66 символов (с CDS ), 60 уровней и более (без CDS) |
Функции | |
Даты записаны | Дата / время изменения, дата / время создания (только для DOS 7.0 и выше), дата доступа (доступно только при включенном ACCDATE ), [2] дата / время удаления (только с DELWATCH 2) |
Диапазон дат | 1980-01-01 по 2099-12-31 ( 2107-12-31 ) |
Разрешение даты | 2 секунды для времени последнего изменения, 10 мс для времени создания, 1 день для даты доступа, 2 секунды для времени удаления |
Атрибуты | Только для чтения , Скрытый , Система , Том , Каталог , Архив |
Разрешения файловой системы | Частично, только с ОС DR-DOS , REAL / 32 и 4690 |
Прозрачное сжатие | да |
Чтобы преодолеть ограничение размера тома FAT16, в то же время позволяя коду реального режима DOS обрабатывать формат, Microsoft разработала новую версию файловой системы FAT32 , которая поддерживала увеличенное количество возможных кластеров, но могла повторно использовать большую часть существующего кода, так что обычный объем памяти был увеличен менее чем на 5 КБ под DOS. [37] Значения кластера представлены 32-битными числами, из которых 28 битов используются для хранения номера кластера.
Максимальные размеры
Загрузочный сектор FAT32 использует 32-битное поле для подсчета секторов, ограничивая максимальный размер тома FAT32 до 2 терабайт с размером сектора 512 байт . Максимальный размер тома FAT32 составляет 16 ТБ с размером сектора 4096 байт. [38] [39] Встроенный инструмент форматирования диска оболочки Windows в Microsoft Windows поддерживает только тома размером до 32 ГБ, но большие тома FAT32 могут быть созданы с помощью командной строки , PowerShell или сторонних инструментов и прочитаны Microsoft Windows . [40]
Максимально возможный размер файла на томе FAT32 составляет 4 ГБ минус 1 байт или 4 294 967 295 (2 32 - 1) байт. Это ограничение является следствием записи о длине файла 4 байта в таблице каталогов, а также повлияет на относительно большие разделы FAT16, разрешенные достаточным размером сектора. [1]
Подобно FAT12 и FAT16, FAT32 не включает прямую встроенную поддержку длинных имен файлов, но тома FAT32 могут дополнительно содержать длинные имена файлов VFAT в дополнение к коротким именам файлов точно так же, как длинные имена файлов VFAT были дополнительно реализованы для томов FAT12 и FAT16. .
Разработка
FAT32 была представлена в MS-DOS 7.1 / Windows 95 OSR2 в 1996 году, хотя для ее использования требовалось переформатирование, а DriveSpace 3 (версия, которая поставлялась с Windows 95 OSR2 и Windows 98) никогда не поддерживала ее. Windows 98 представила утилиту для преобразования существующих жестких дисков из FAT16 в FAT32 без потери данных.
В линейке Windows NT встроенная поддержка FAT32 появилась в Windows 2000 . Бесплатный драйвер FAT32 для Windows NT 4.0 был доступен в Winternals , компании, позже приобретенной Microsoft. Приобретение драйвера из официальных источников больше невозможно. С 1998 года для включения поддержки FAT32 в DR-DOS можно было использовать динамически загружаемый драйвер DRFAT32 Caldera . [41] [42] Первой версией DR-DOS, которая изначально поддерживала доступ к FAT32 и LBA, была OEM DR-DOS 7.04 в 1999 году. В том же году IMS представила встроенную поддержку FAT32 с REAL / 32 7.90, а операционная система IBM 4690 добавила поддержку FAT32. с версией 2. [43] Ahead Software предоставила еще один динамически загружаемый драйвер FAT32.EXE для DR-DOS 7.03 с Nero Burning ROM в 2004 году. IBM PC DOS представила встроенную поддержку FAT32 с OEM PC DOS 7.10 в 2003 году.
Для разделов FAT32 зарезервированы два типа разделов 0x0B
и 0x0C
. Последний тип также называется FAT32X , чтобы указать на использование доступа к диску LBA вместо CHS. [41] [44] [45] [46] [47] В таких разделах записи геометрии, связанные с CHS , а именно адреса секторов CHS в MBR, а также количество секторов на дорожке и количество головок в EBPB запись, может не содержать значений или вводить в заблуждение и не должна использоваться. [48] [46] [47]
Расширения
Расширенные атрибуты
OS / 2 в значительной степени зависит от расширенных атрибутов (EAS) и сохраняет их в скрытом файле под названием « EA␠DATA.␠SF
» в корневой директории на FAT12 или FAT16 тома. Этот файл индексируется двумя ранее зарезервированных байт (или каталога в) файла в записи каталога со смещением 0x14. [49] В формате FAT32 эти байты содержат старшие 16 бит номера начального кластера файла или каталога, что делает невозможным сохранение советников OS / 2 в FAT32 с использованием этого метода.
Однако сторонний драйвер устанавливаемой файловой системы (IFS) FAT32 FAT32.IFS версии 0.70 и выше от Henk Kelder & Netlabs для OS / 2, eComStation и ArcaOS сохраняет расширенные атрибуты в дополнительных файлах, имена файлов которых содержат строку " ␠EA.␠SF
", добавленную к обычное имя файла, к которому они принадлежат. Драйвер также использует байт со смещением 0x0Cв записях каталога для хранения байта специальной метки, указывающего на наличие расширенных атрибутов, чтобы ускорить работу. [50] [51] (Это расширение критически несовместимо с методом FAT32 + для хранения файлов размером более 4 ГБ минус 1 на томах FAT32.) [33]
Расширенные атрибуты доступны через рабочий стол Workplace Shell , через сценарии REXX и многие системные утилиты с графическим интерфейсом пользователя и командной строки (например, 4OS2 ). [52]
Чтобы приспособиться к своей подсистеме OS / 2 , Windows NT поддерживает обработку расширенных атрибутов в HPFS , NTFS , FAT12 и FAT16. Он хранит советники в FAT12, FAT16 и HPFS по той же схеме, что и OS / 2, но не поддерживает никаких других типов ADS, которые хранятся на томах NTFS. Попытка скопировать файл с любым ADS, кроме EAs, с тома NTFS на том FAT или HPFS дает предупреждающее сообщение с именами ADS, которые будут потеряны. Он не поддерживает метод FAT32.IFS для хранения советников на томах FAT32.
Windows 2000 и далее действует точно так же, как Windows NT, за исключением того, что она игнорирует EAs при копировании в FAT32 без какого-либо предупреждения (но показывает предупреждение для других ADS, таких как «Macintosh Finder Info» и «Macintosh Resource Fork»).
Cygwin также использует " EA␠DATA.␠SF
" файлы.
Длинные имена файлов
Одной из целей взаимодействия с пользователем для разработчиков Windows 95 была возможность использовать длинные имена файлов (LFN - до 255 единиц кода UTF-16 длиной), [nb 1] в дополнение к классическим именам файлов 8.3 (SFN). Для обратной и прямой совместимости LFN были реализованы как дополнительное расширение поверх существующих структур файловой системы FAT с использованием обходного пути в способе размещения записей каталогов.
Этот прозрачный метод хранения длинных имен файлов в существующих файловых системах FAT без изменения их структур данных обычно известен как VFAT (от «Virtual FAT») в честь драйвера виртуального устройства Windows 95 . [№ 5]
Операционные системы без поддержки VFAT могут по-прежнему получать доступ к файлам под своим коротким псевдонимом файла без ограничений; однако связанные длинные имена файлов могут быть потеряны при копировании файлов с длинными именами в операционных системах, не поддерживающих VFAT.
В Windows NT поддержка длинных имен файлов VFAT началась с версии 3.5 .
Linux предоставляет драйвер файловой системы VFAT для работы с томами FAT с длинными именами файлов VFAT. Некоторое время был доступен драйвер UVFAT для обеспечения комбинированной поддержки разрешений в стиле UMSDOS с длинными именами файлов VFAT.
OS / 2 добавила поддержку длинных файлов в FAT с использованием расширенных атрибутов (EA) до появления VFAT. Таким образом, длинные имена файлов VFAT невидимы для OS / 2, а длинные имена файлов EA невидимы для Windows; поэтому опытным пользователям обеих операционных систем придется вручную переименовывать файлы.
Human68K поддерживает до 18,3 имён файлов и символов кандзи ( Shift JIS ) в проприетарном варианте файловой системы FAT.
Для поддержки Java - приложений, в FlexOS - IBM 4690 OS версия 2 представила свою собственную виртуальную файловую система (VFS) архитектуру для хранения длинных имен файлов в файловой системе FAT в обратно совместимой моде. Если этот параметр включен, виртуальные имена файлов (VFN) доступны под отдельными буквами логических дисков, тогда как настоящие имена файлов (RFN) остаются доступными под исходными буквами дисков. [53]
Вилки и альтернативные потоки данных
Сама файловая система FAT не предназначена для поддержки альтернативных потоков данных ( ADS ), но некоторые операционные системы, которые сильно зависят от них, разработали различные методы их обработки на томах FAT. Такие методы либо сохраняют дополнительную информацию в дополнительных файлах и каталогах ( классическая Mac OS и macOS ), либо придают новую семантику ранее неиспользуемым полям структур данных FAT на диске ( OS / 2 и Windows NT ).
Mac OS, использующая PC Exchange, хранит различные даты, атрибуты файлов и длинные имена файлов в скрытом файле с именем « FINDER.DAT
», а вилки ресурсов (обычный ADS Mac OS) в подкаталоге с именем « RESOURCE.FRK
» в каждом каталоге, где они используются. Начиная с версии PC Exchange 2.1, они хранят длинные имена файлов Mac OS как стандартные длинные имена файлов FAT и преобразуют имена файлов FAT, длина которых превышает 31 символ, в уникальные 31-значные имена файлов, которые затем можно сделать видимыми для приложений Macintosh.
macOS хранит вилки ресурсов и метаданные (атрибуты файлов, другие ADS) с использованием формата AppleDouble в скрытом файле с именем, созданным из имени файла владельца с префиксом « ._
», а Finder сохраняет некоторые метаданные папок и файлов в скрытом файле с именем « .DS_Store
» (но обратите внимание, что Finder использует .DS_Store
даже собственную файловую систему MacOS, HFS + ).
Разрешения и имена файлов UMSDOS
Ранние дистрибутивы GNU / Linux также поддерживали формат, известный как UMSDOS , вариант FAT с атрибутами файлов Unix (такими как длинное имя файла и права доступа), хранящимися в отдельном файле с именем " --linux-.---
". UMSDOS вышла из употребления после того, как была выпущена VFAT, и она не включена по умолчанию в Linux, начиная с версии 2.5.7. [54] Некоторое время Linux также обеспечивала комбинированную поддержку разрешений в стиле UMSDOS и длинных имен файлов VFAT через UVFAT .
FAT +
В 2007 году в открытом проекте FAT + предлагалось хранить файлы большего размера до 256 ГБ минус 1 байт или 274 877 906 943 (2 38 - 1) байта на слегка модифицированных и обратно совместимых томах FAT32 [33], но существует риск того, что дисковые инструменты или Реализации FAT32, не знающие об этом расширении, могут обрезать или удалять файлы, превышающие нормальный предел размера файла FAT32. Поддержка FAT32 + и FAT16 + ограничена некоторыми версиями DR-DOS и недоступна в основных операционных системах. [55] (Это расширение критически несовместимо с /EAS
опцией метода FAT32.IFS для хранения расширенных атрибутов OS / 2 на томах FAT32.)
Производные
Турбо FAT
В своей файловой системе NetWare ( NWFS ) Novell реализовала сильно модифицированный вариант файловой системы FAT для операционной системы NetWare . Для больших файлов он использовал функцию повышения производительности Turbo FAT .
FATX
FATX семейство файловых систем , предназначенные для Microsoft «s Xbox видео игровой консоли жесткого диска дисков и карт памяти , [56] [57] введен в 2001 году.
Несмотря на сходство с теми же основными идеями проектирования, что и FAT16 и FAT32 , структуры на диске FATX16 и FATX32 упрощены, но принципиально несовместимы с обычными файловыми системами FAT16 и FAT32, что делает невозможным монтирование таких томов обычными драйверами файловой системы FAT.
Незагрузочной Суперблок сектор 4 КБ в размере и занимает 18 байт большого ВРВА-подобную структуру совершенно отличную от нормального BPBS . Кластеры обычно имеют размер 16 КБ, а на Xbox есть только одна копия FAT. Записи каталога имеют размер 64 байта вместо обычных 32 байтов . Файлы могут иметь имена длиной до 42 символов с использованием набора символов OEM и иметь размер до 4 ГБ минус 1 байт. Метки времени на диске держать создание, модификация и доступ дату и время , но отличаются от FAT: в FAT, то эпоха в 1980 ; в FATX эпоха 2000 года . Для Xbox 360 эпоха - 1980 год. [58]
exFAT
EXFAT является файловая система введена с Windows Embedded CE 6.0 в ноябре 2006 года и привел к семейству Windows NT с Vista Service Pack 1 и Windows XP с пакетом обновления 3 (и / или отдельной установки Windows XP Update KB955704). Он основан на архитектуре таблицы размещения файлов, но несовместим, запатентован и защищен патентами. [59]
exFAT предназначен для использования на флэш-накопителях и картах памяти, таких как SDXC и Memory Stick XC , где иначе используется FAT32. Производители обычно предварительно форматируют карты SDXC с его помощью. Его основным преимуществом является превышение предельного размера файла в 4 ГБ, поскольку ссылки на размер файла хранятся с восемью байтами вместо четырех, увеличивая лимит до 2 64 -1 байт.
Утилиты графического интерфейса пользователя и командной строки Microsoft предлагают его в качестве альтернативы NTFS (а для небольших разделов - FAT16B и FAT32 ). MBR , тип раздела является 0x07
(такой же , как используется для IFS , HPFS и NTFS). Информация о логической геометрии, расположенная в VBR , хранится в формате, не похожем ни на один BPB.
В начале 2010 года , файловая система была обратной инженерии в SANS Institute . [60] 28 августа 2019 года Microsoft объявила, что сделает техническую спецификацию exFAT общедоступной, чтобы ее можно было использовать в ядре Linux и других операционных системах. [61]
Патенты
Microsoft подала заявку и получила ряд патентов на ключевые части файловой системы FAT в середине 1990-х годов. Все четыре относятся к расширению FAT с длинными именами, впервые появившемуся в Windows 95 : патент США 5 579 517, [62] патент США 5 745 902, [63] патент США 5 758 352, [64] патент США 6 286 013 (срок действия всех истек с 2013 года). [65]
3 декабря 2003 г. Microsoft объявила [66], что будет предлагать лицензии на использование своей спецификации FAT и «связанной интеллектуальной собственности» по цене 0,25 доллара США за проданную единицу с максимальным размером роялти 250 000 долларов за лицензионное соглашение. . [67] С этой целью Microsoft привела четыре патента на файловую систему FAT в качестве основания для своих требований интеллектуальной собственности.
В спецификации EFI FAT32 [6] Microsoft специально предоставляет ряд прав, которые многие читатели интерпретировали как разрешающие поставщикам операционных систем внедрять FAT. [68]
Патенты сторонних организаций, влияющие на FAT, включают: патент США 5,367,671, относящийся к атрибутам расширенных объектов OS / 2 (срок действия истек в 2011 г.). [69]
Проблемы и иски
Общественный Фонд Patent (PUBPAT) представил доказательства в США по патентам и товарным знакам (USPTO) в 2004 году оспаривая действительность патента США 5579517, [62] , включая ссылки предшествующего уровня техники от Xerox и IBM. [70] ВПТЗ США начало расследование и завершило его отклонением всех пунктов патента. [71] В следующем году ВПТЗ США далее объявило, что после процесса повторной экспертизы оно подтвердило отказ '517 и дополнительно признало патент США 5,758,352 [64] недействительным на том основании, что у патента были неправильные правопреемники.
Однако в 2006 году USPTO постановило, что особенности реализации Microsoft системы FAT были «новыми и неочевидными», отменив предыдущие решения и оставив патенты в силе. [72]
В феврале 2009 года Microsoft подала иск о нарушении патентных прав против TomTom, утверждая, что продукты производителя устройства нарушают патенты, связанные с длинными именами файлов VFAT . Поскольку некоторые продукты TomTom основаны на GNU / Linux , это был первый раз, когда Microsoft попыталась применить свои патенты против платформы GNU / Linux. [73] Судебный процесс был урегулирован во внесудебном порядке в следующем месяце соглашением о том, что Microsoft будет предоставлен доступ к четырем патентам TomTom, что TomTom откажется от поддержки длинных имен файлов VFAT в своих продуктах и что взамен Microsoft не будет добиваться судебного иска. против TomTom на пятилетний срок действия мирового соглашения. [74]
В октябре 2010 года Microsoft подала иск о нарушении патентных прав против Motorola, утверждая, что несколько патентов (включая два патента VFAT) не были лицензированы для использования в операционной системе Android . [75] Они также подали жалобу в ITC . [76] Разработчики программного обеспечения с открытым исходным кодом разработали методы, предназначенные для обхода патентов Microsoft. [77] [78]
В 2013 г. патент EP0618540 «Общее пространство имен для длинных и коротких имен файлов» (истекший с 2014 г. [79] ) был признан недействительным в Германии. [80] После того, как апелляция была отозвана, это решение вступило в силу 28 октября 2015 года. [81]
Смотрите также
- Сравнение файловых систем
- Дизайн файловой системы FAT
- Назначение буквы диска
- Список файловых систем
- Безопасная для транзакций файловая система FAT
Заметки
- ^ a b c d e f Начиная с Windows 2000 , Microsoft Windows использует UTF-16 вместо UCS-2 для внутреннего "Unicode" . В UTF-16 «символ» (кодовая точка) может занимать две кодовые единицы.
- ^ Было замечено, что Windows XP создает аналогичные гибридные диски при переформатировании дисков ZIP-100 в формате FAT16B в формат FAT32. Полученные тома были FAT32 по формату, но по-прежнему использовали FAT16B EBPB. (Непонятно, как Windows определяет расположение корневого каталога на томах FAT32, если использовалась только FAT16 EBPB.)
- ^ a b Источники различаются в отношении первого терминала ввода данных NCR, интегрирующего поддержку файловой системы FAT. По словам Стивена Мейнса и Пола Эндрюса, «Гейтс», разработка NCR 8200 велась в конце 1977 года, ошибочно классифицированная как обновление на дискетах для NCR 7200 , выпущенного в 1975-11 годах ( модели I и IV ) и был построен на базе 8-битного процессора Intel 8080 , но был только на кассете. Однако NCR Century 8200 был 16-битным миникомпьютером, к которому можно было подключить несколько терминалов ввода данных. Марк Макдональд даже вспомнил NCR 8500 , мейнфрейм из серии Criterion, который тоже можно исключить. Объявленная 1977-10 для поставки в 1978-02, NCR также представила серию NCR I-8100, включая модели NCR I-8130 и NCR I-8150 на базе 8080 для малых предприятий с двумя гибкими дисками. Другие источники указывают, что фактической целевой платформой была либо сама серия NCR 7200, либо последующая серия. NCR Basic Plus 6 (на основе Microsoft Extended BASIC-80 ) стал доступен для кассетной модели NCR 7200 VI в первом квартале 1977 года. Серия NCR 7500 была выпущена в 1978 году на основе аналогичного оборудования 8080, но теперь включает модели NCR 7520 и 7530 с 8-дюймовыми дискетами. NCR Basic +6 , предшественник или адаптация Standalone Disk BASIC-80, был доступен для них по крайней мере с 1979 года. Один источник утверждает, что существовал специальный вариант модели NCR 7200 с двумя 8-дюймовыми дискетами и Microsoft BASIC, который был импортирован NCR Sydney. в Австралию меньше всего.
- ^ DR-DOS может загружаться с логических секторных носителей FAT12 / FAT16 с размером логических секторов до 1024 байтов.
- ^ Драйвер с именем VFAT появился до Windows 95 в Windows for Workgroups 3.11, но эта более старая версия использовалась только для реализации 32-разрядного доступа к файлам и не поддерживала длинные имена файлов .
Рекомендации
- ^ a b c «Файловые системы» . Microsoft TechNet . 2001 . Проверено 31 июля 2011 года .
- ^ а б в г д Microsoft (2006-11-15). Windows 95 CD-ROM Файл CONFIG.TXT Статья 135481, Версия: 1.1, получено 22 декабря 2011 г .: «Для каждого жесткого диска указывает, следует ли записывать дату последнего доступа к файлам. Даты последнего доступа отключены для всех дисков. когда ваш компьютер запущен в безопасном режиме и по умолчанию не поддерживаются для дискет. Синтаксис:
ACCDATE=drive1+|- [drive2+|-]...
" - ^ «Краткое введение в форматы FAT (таблица размещения файлов)» . www.wizcode.com . Архивировано из оригинального 25 сентября 2015 года . Проверено 24 сентября 2015 года .
- ^ «Сравнение файловых систем NTFS и FAT» . Microsoft . Проверено 27 января 2014 года .
- ^ JEIDA / JEITA / CIPA (2010). «Стандарт ассоциации продуктов для камеры и обработки изображений, CIPA DC-009-Translation-2010, Правила проектирования для файловой системы камеры: DCF версии 2.0 (издание 2010 г.)» (PDF) . Архивировано из оригинального (PDF) 30 сентября 2013 года . Проверено 13 апреля 2011 .
- ^ а б в г "Microsoft Extensible Firmware Initiative FAT32 File System Specification, FAT: General Overview of On-Disk Format" . Microsoft . 30 марта 2011 . Проверено 21 декабря 2018 года .
- ^ «Объем и файловая структура дисковых картриджей для обмена информацией» . Стандарт ECMA-107 (2-е изд., Июнь 1995 г.) . ECMA . 1995 . Проверено 30 июля 2011 года .
- ^ «Информационные технологии - Объем и файловая структура дисковых картриджей для обмена информацией» . ИСО / МЭК 9293: 1994 . Каталог ISO . 1994 . Проверено 6 января 2012 года .
- ^ «Обработка информации - Объем и файловая структура гибких дисковых картриджей для обмена информацией» . ISO 9293: 1987 . Каталог ISO . 1987 . Проверено 6 января 2012 года .
- ^ Рейнольдс, Аарон Р .; Адлер, Деннис Р .; Липе, Ральф А .; Pedrizetti, Ray D .; Парсонс, Джеффри Т .; Арун, Расипурам В. (26 мая 1998 г.). «Общее пространство имен для длинных и коротких имен файлов» . Патент США 5758352 . Проверено 19 января 2012 года .
- ^ Чаппелл, Джефф (январь 1994). Шульман, Эндрю; Педерсен, Аморетта (ред.). Внутреннее устройство DOS . Серия программирования Эндрю Шульман (1-е издание, 1-е изд.). Издательство Эддисон Уэсли . ISBN 978-0-201-60835-9.(xxvi + 738 + iv страницы, 3,5-дюймовый диск [1] [2] ) Исправления: [3] [4] [5]
- ^ Б с д е е г ч я J Xerox BASIC-80 - справочное руководство basic-80 (PDF) . 5.0. Microsoft , Xerox . 1979. 610P70641 . Проверено 2 июня 2014 года . (NB. Для Microsoft (автономный диск / диск / расширенный / 8K) BASIC-80, (автономный диск / расширенный) BASIC-86, компилятор BASIC, выпуск 5.0)
- ^ Б с д е е г ч я J Справочное руководство MICROSOFT BASIC-80 версии 5.0 / Приложение к интерпретатору и компилятору BASIC-80, выпуск 5.1 (PDF) . 5.1. Microsoft . 1979 . Проверено 2 июня 2014 года . (NB. Для Microsoft (автономный диск / диск / расширенный / 8K) BASIC-80, (автономный диск / расширенный) BASIC-86, компилятор BASIC, выпуск 5.1)
- ^ а б в г д е Дункан, Рэй; Боствик, Стив; Бургойн, Кит (1988). Энциклопедия MS-DOS: версии с 1.0 по 3.2 (Полностью переработанная ред.). Редмонд, Вашингтон, США: Microsoft Press . ISBN 1-55615-049-0. LCCN 87-21452 . OCLC 16581341 .(xix + 1570 страниц; 26 см) (NB. Это издание было опубликовано в 1988 году после обширной переработки отозванного первого издания 1986 года другим коллективом авторов. [6] )
- ^ Манес, Стивен; Эндрюс, Пол (1993). Гейтс: Как могол из Microsoft заново изобрел отрасль и стал самым богатым человеком в Америке . Даблдэй. ISBN 0-385-42075-7.
- ^ а б Хантер, Дэвид (1983). «Тим Патерсон - Корни DOS» . Softalk для персонального компьютера IBM (март 1983 г.). Архивировано из оригинала 6 сентября 2019 года . Проверено 2 июня 2014 года .
- ^ Шульман, Эндрю; Браун, Ральф Д .; Макси, Дэвид; Michels, Raymond J .; Кайл, Джим (1994) [ноябрь 1993]. Недокументированная DOS: Руководство программиста по зарезервированным функциям и структурам данных MS-DOS - расширено за счет включения MS-DOS 6, Novell DOS и Windows 3.1 (2-е изд.). Ридинг, Массачусетс: Эддисон Уэсли . п. 11 . ISBN 0-201-63287-X.(xviii + 856 + vi стр., 3,5-дюймовая дискета) Исправления: [7] [8]
- ^ а б Патерсон, Тим (30 сентября 2007 г.). «Дизайн DOS» . DosMan Drivel . Проверено 4 июля 2011 года .
- ^ Сиэтлские компьютерные продукты (август 1980 г.). «86-ДОС - ОПЕРАЦИОННАЯ СИСТЕМА 8086 - 95 $» . Байт (Реклама). Vol. 5 шт. 8. BYTE Publications Inc. стр. 173. ISSN 0360-5280 . CODEN BYTEDJ . Проверено 18 августа 2013 года . [9] (Примечание. В объявлении SCP продукт уже называется 86-DOS , но не упоминается конкретный номер версии. Версия 0.3 уже известна как 86-DOS, поэтому изменение имени должно было произойти либо для версии 0.2 или сразу после этого в августе 1980 г.)
- ^ а б в г Сиэтлские компьютерные продукты (1981). «Приложение к SCP 86-DOS 1.0» (PDF) . Проверено 10 марта 2013 года .
- ^ Уоллес, Джеймс; Эриксон, Джим; (1992); Жесткий диск: Билл Гейтс и создание империи Microsoft , John Wiley & Sons, ISBN 0-471-56886-4
- ^ Нортон, Питер ; (1986); Внутри IBM PC, Revised и Enlarged , Брэди, ISBN 0-89303-583-1 , стр. 157
- ^ Дженкинсон, Брайан; Sammes, AJ (2000). Криминалистические вычисления: Руководство для практикующего (серия для практикующих) . Берлин: Springer. п. 157 . ISBN 1-85233-299-9.
... можно адресовать только 2 ^ 12 (то есть 4096) единиц или кластеров распределения. Фактически, это число меньше этого, поскольку 000h и 001h не используются, а от FF0h до FFFh зарезервированы или используются для других целей, оставляя от 002h до FEFh (от 2 до 4079) как диапазон возможных кластеров.
- ^ Патерсон, Тим (1983). «Взгляд изнутри на MS-DOS» . Байт . Архивировано из оригинального 20 -го июля 2011 года . Проверено 18 июля 2011 .
Нумерация начинается с 2; первые два числа, 0 и 1, зарезервированы.
- ^ IBM (1984). Информационное письмо IBM PC DOS 3.0 .
- ^ IBM (1985). Технический справочник IBM PC DOS . Первое издание, P / N 6024181, датировано февралем 1985 г.
- ^ Статья базы знаний Microsoft: «Обзор разделов MS-DOS»
- ^ а б в К вашему сведению - Установка DR DOS на разделах NEC DOS 3.3 , Novell, 5 января 1993 г., FYI.M.1101 , получено 12 августа 2014 г.
- ^ Брауэр, Андрис. «Список идентификаторов разделов для ПК» .
- ^ «Q78407: Разделы Wyse DOS 3.3 несовместимы с MS-DOS 5.x и 6.x» . Microsoft. 17 декабря 2000 г.[ мертвая ссылка ] Альтернативный URL
- ^ «Q68176: Обновление систем до 4.0 с логическими дисками> 32 МБ» . Microsoft. 17 декабря 2000 г.[ мертвая ссылка ] Альтернативный URL
- ^ Брауэр, Андрис. «Свойства таблиц разделов» .
- ^ а б в г Кунт, Удо; Георгиев, Лучезар I .; Дэвис, Джереми (2007). «FAT + проект редакции 2» (2-е изд.). Архивировано из оригинального (FATPLUS.TXT) 19 февраля 2015 года . Проверено 5 августа 2015 года .
- ^ «Обзор Dskprobe: Восстановление данных» . Microsoft TechNet . 28 марта 2003 . Проверено 3 августа 2011 года .
- ^ «Ошибки при создании файлов или папок в корневом каталоге» . Справка и поддержка Microsoft. 16 декабря 2004 . Проверено 14 октября 2006 года .
- ^ "страница руководства mkdosfs" .
- ^ «Пакет ресурсов Windows 98 - Глава 10 - Диски и файловые системы» . Microsoft TechNet . 1998 . Проверено 16 июля 2012 года .
- ^ «Ограничения файловой системы FAT32» . База знаний Microsoft . 26 марта 2007 . Проверено 21 августа 2011 года .
Кластеры не могут быть больше 64 килобайт ( КБ ).
- ^ «Ограничения файловой системы FAT32 в Windows XP» . База знаний Microsoft . 1 декабря 2007 . Проверено 21 августа 2011 года .
- ^ Гленн, Уолтер. «Как отформатировать USB-накопители размером более 32 ГБ с помощью FAT32 в Windows» . How-To Geek . Проверено 26 января 2021 года .
- ^ а б README.TXT - загрузочный диск с поддержкой FAT32 Caldera DR-DOS (DRFAT32) . Caldera, Inc. 24 июля 1998 г.
- ^ DRFAT32.SYS R1.00 INT 13h Интерфейс для FAT32 Redirector , Caldera, Inc., 11 сентября 1998 г.
- ^ IBM; Руководство пользователя ОС 4690, версия 5.2 , документ IBM SC30-4134-01, 2008-01-10 ( [10] )
- ^ Карповиц, Кристина (23 сентября 1998 г.). «PowerQuest PartitionMagic 4.0 теперь доступен» . PowerQuest . Архивировано из оригинала 8 февраля 1999 года . Проверено 17 апреля 2015 года .
- ^ Ливингстон, Брайан (28 октября 1998 г.). «FAT-32X может работать иначе, чем FAT-32 на больших жестких дисках» . InfoWorld . Vol. 20 нет. 43 . Проверено 17 апреля 2015 года .
- ^ а б Дуитц, Нил (17 июля 2001 г.). "Кто-нибудь может объяснить FAT32X?" . Частные вопросы и ответы по Win98, Программа предварительного просмотра Windows 98 для потребителей. Архивировано из оригинального 13 июня 2004 года . Проверено 17 апреля 2015 года .
- ^ а б Костанцо, Ланс (14 мая 1998 г.). «FAT32X» . Архивировано из оригинального 21 мая 1998 года . Проверено 17 апреля 2015 года .
- ^ Стейнберг, Дэвид (1 мая 1998 г.). "Что такое раздел FAT32X?" . Технический совет / FAQ . Техническая поддержка PowerQuest . Проверено 17 апреля 2015 года .
- ^ Готов, Боб; Tavi Systems (28 октября 2000 г.); Реализация расширенных атрибутов в файловой системе FAT ( [11] Архивировано 13 июня 2006 г., на Wayback Machine )
- ^ Келдер, Хенк; (2003); FAT32.TXT для FAT32.IFS версии 0.9.13. "( [12] ):" Этот байт [...] не изменяется во время работы Windows 95 и окружается [sic] с помощью SCANDISK или DEFRAG . [...] Если другая программа устанавливает значение
0x00
для файла с советниками, эти советники больше не будут найдены с использованием только вызовов DosFindFirst / Next. Другие вызовы OS / 2 для получения EAs (DosQueryPathInfo, DosQueryFileInfo и DosEnumAttribute) не полагаются на этот байт. Также могло произойти [...] обратное. [...] В этом случае снизится только производительность сканирования каталогов. Обе ситуации [...] исправлены CHKDSK ". - ^ Келдер, Хенк; FAT32.TXT для FAT32.IFS версии 0.74 ( «Архивная копия» . Архивировано из оригинального 30 марта 2012 года . Проверено 14 января 2012 года .CS1 maint: заархивированная копия как заголовок ( ссылка )). Комментарий: в этой старой версии файла README все еще обсуждаются старые
0xEA
и0xEC
магические значения. - ^ Нетерпеливый, Боб (28 октября 2000 г.). «Реализация расширенных атрибутов файловой системы FAT» . Tavi OS / 2 страницы . Архивировано из оригинального 13 июня 2006 года . Проверено 14 октября 2006 года .
- ^ IBM; Руководство по программированию ОС 4690, версия 5.2 , документ IBM SC30-4137-01, 2007-12-06 ( [13] )
- ^ «Примечания к выпуску v2.5.7» . Архивы ядра Linux. 12 марта 2002 . Проверено 14 октября 2006 года .
- ^ Кунт, Удо (21 июля 2011 г.). «Проект улучшения DR-DOS / OpenDOS» . Проверено 20 апреля 2015 года .
- ^ «Спецификация FATX» . free60 вики . Проверено 16 августа 2011 года .
- ^ де Куинси, Эндрю; Мюррей-Питтс, Люсьен (29 августа 2008 г.). «Сведения о разделах Xbox и файловой системе» . 0,13. Проект Xbox-Linux. Архивировано из оригинала 17 июня 2010 года . Проверено 25 мая 2014 года .
- ^ Стейл, Майкл (26 февраля 2008 г.) [2003]. «Различия между Xbox FATX и MS-DOS FAT» . Проект Xbox-Linux. Архивировано из оригинала 17 июня 2010 года . Проверено 25 мая 2014 года .
- ^ Microsoft. «Программа лицензирования интеллектуальной собственности файловой системы exFAT» . Архивировано из оригинала на 7 мая 2013 года . Проверено 23 апреля 2013 .
- ^ https://www.sans.org/reading-room/whitepapers/forensics/reverse-engineering-microsoft-exfat-file-system-33274
- ^ «exFAT в ядре Linux? Да!» . Блог Microsoft с открытым исходным кодом . 28 августа 2019 . Проверено 6 октября 2019 года .
- ^ a b US 5579517 , Reynolds, Aaron R .; Деннис Р. Адлер и Ральф А. Липе и др., «Общее пространство имен для длинных и коротких имен файлов», выпущено в 1996 г.
- ^ US 5745902 , Миллер, Томас Дж. И Гэри Д. Кимура, «Метод и система для доступа к файлу с использованием имен файлов, имеющих разные форматы имен файлов», выпущенный в 1998 г.
- ^ a b US 5758352 , Reynolds, Aaron R .; Деннис Р. Адлер и Ральф А. Липе и др., «Общее пространство имен для длинных и коротких имен файлов», выпущенный в 1998 г.
- ^ US 6286013 , Reynolds, Aaron R .; Деннис Р. Адлер и Ральф А. Липе и др., «Метод и система для обеспечения общего пространства имен для длинных и коротких имен файлов в операционной системе», выпущенный в 1996 г.
- ^ Microsoft.com. Архивировано 22 августа 2009 г. на Wayback Machine.
- ^ «Файловая система FAT» . Лицензирование интеллектуальной собственности . Microsoft. Архивировано из оригинального 21 сентября 2016 года.
- ^ Гаррет, Мэтью (19 января 2012 г.). «EFI и Linux: будущее уже наступило, и оно ужасно» . linux.conf.au . YouTube . Проверено 12 января 2014 года .
- ^ US 5367671 , Фейгенбаум, Барри А. и Феликс Миро, «Система для доступа к данным атрибутов расширенных объектов (EA) через имя файла или ссылки на дескрипторы EA в таблицах путей», выпущенная в 1994 г.
- ^ Равичер, Дэниел Б. (15 апреля 2004 г.). «Запрос PUBPAT на повторную экспертизу патента Microsoft FAT» (PDF) . Государственный патентный фонд . Проверено 12 января 2014 года .
- ^ USPTO (30 сентября 2004 г.). «Действие Патентного ведомства, отклоняющее патент Microsoft FAT» (PDF) . Государственный патентный фонд . Проверено 12 января 2014 года .
- ^ Броаш, Энн (10 января 2006 г.). «Патент на файловую систему Microsoft поддержан» . CNET News.
- ^ Пол, Райан (25 февраля 2009 г.). «Иск Microsoft по поводу патентов FAT может открыть ящик Пандоры OSS» . arstechnica.com . Проверено 28 февраля 2009 года .
- ^ Фрид, Инна (30 марта 2009 г.). «Microsoft и TomTom урегулировали патентный спор» . cnet.com . Проверено 22 августа 2009 года .
- ^ «Патентный иск Microsoft Motorola» . 1 октября 2010 . Проверено 2 октября 2010 года .
- ^ Проталинский, Эмиль (1 октября 2010 г.). «Microsoft подает в суд на Motorola, ссылаясь на нарушение патентных прав Android» . arstechnica.com . Проверено 2 октября 2010 года .
- ^ Пол, Райан (2 июля 2009 г.). «Новый патч для Linux может обойти патенты Microsoft на FAT» . ArsTechnica.com . Проверено 30 октября 2013 года .
- ^ Браун, Эрик (2 июля 2009 г.). «Может ли патч для FAT избежать судебных исков Microsoft?» . DesktopLinux.Com. Архивировано из оригинала на 31 января 2013 года . Проверено 23 августа 2009 года .
- ^ [14] , «Общее пространство имен для длинных и коротких имен файлов», выпущено 31 марта 1994 г.
- ^ Мюллер, Флориан (5 декабря 2013 г.). «Федеральный патентный суд Германии признает недействительным патент Microsoft FAT, апелляционный суд может не согласиться» . Патенты FOSS . Проверено 12 января 2014 года .
- ^ Лабезиус, Стефан (28 мая 2017 г.). "Bundespatentgericht erklärt VFAT-Patent erneut für nichtig" . ifrOSS . Проверено 2 августа 2019 года .
Внешние ссылки
- Описание файловой системы FAT32 : статья 154997 базы знаний Майкрософт
- MS-DOS: ограничения каталогов и подкаталогов : статья 39927 базы знаний Майкрософт
- Обзор файловых систем FAT, HPFS и NTFS : статья 100108 базы знаний Майкрософт
- Microsoft Technet; Ограничения на объем и размер файлов для файловых систем FAT , копия, сделанная Internet Archive Wayback Machine, статьи со сводкой ограничений в FAT32, которая больше не доступна на веб-сайте Microsoft.
- Чен, Раймонд ; Microsoft TechNet: краткая и неполная история FAT32
- Fdisk не распознает жесткие диски размером более 64 ГБ в полный размер : статья 263044 базы знаний Майкрософт
- Microsoft Windows XP: FAT32 Файловая система , копированиесделанное Internet Archive «s Wayback Machine из статьи с резюме ограничений в файловойFAT32которая больше не доступна на вебсайте Microsoft.