Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВМСС / HDD / Файловые системы.doc
Скачиваний:
20
Добавлен:
10.12.2013
Размер:
1.07 Mб
Скачать
      1. Использование fat в Windows

        1. Длинные имена

Windows NT 3.5 и более старших версий, а так же Windows 9x использует эти биты для поддержки длинных имён файлов (до 255 символов) в разделах FAT; используемый для этого способ не мешает MS-DOS обращаться к подобному разделу. Всякий раз при создании файла с длинным именем (то есть файла, длина имени которого превышает стандартное ограничение 8+3 файловой системы MS-DOS или содержит запрещённые в MS-DOS символы) Windows создаёт стандартный элемент каталога, обеспечивая поддержку «короткого» имени файла в формате 8+3. Кроме этого стандартного элемента, Windows создаёт один или несколько вторичных элементов каталога для файла; каждый из вторичных элементов рассчитан на 13 символов в длинном имени файла. Эти вторичные элементы каталога сохраняют соответствующую часть длинного имени файла в формате Unicode. Windows устанавливает атрибуты (том, системный, скрытый, только для чтения) для вторичного элемента каталога, чтобы отметить его в качестве части длинного имени файла. MS-DOS игнорирует файлы с такими атрибутами и обращается к файлу, используя имя формата 8+3, которое содержится в стандартном элементе каталога для файла.

        1. Генерация короткого имени файла

Поскольку Windows использует набор Unicode для имён файлов, существует возможность создания файлов с именем, содержащим «запрещённые» символы, которые программы, рассчитанные на работу под управлением MS-DOS, не смогут считать. Для генерации короткого имени файла в стиле MS-DOS, Windows удаляет все такие символы и пробелы из длинного имени файл. Так как имя файла MS-DOS может иметь только одну точку, все дополнительные точки так же удаляются из имени файла. Далее, в случае необходимости имя файла усекается до 6 символов. К нему добавляется тильда (~) и номер. Например, к каждому уникальному короткому имени файла добавляется ~1. Повторяющиеся имена фалов заканчиваются символами ~2, ~3 и так далее. Расширение имени файла усекается до трёх или меньшего количества символов.

Windows NT использует несколько другой метод создания коротких имён файлов для случая, когда имеется пять или боле файлов, короткие имена которых совпали бы. Для пятого и последующих файлов Windows NT использует только первые два символа от длинного имени и далее специальной математической функцией от длинного имени генерирует следующие уникальные четыре символа короткого имени файла; после этого к результату приписывается ~5 (или другой номер для избежания появления двойного имени файла). Такой метод позволяет повысить эффективность для случая, когда Windows NT должна создавать короткие имена файлов для большого количества файлов с похожими длинными именами.

    1. FAT32

      1. Проблемы fat16

В середине 90х ограничение, накладываемое файловой системой FAT16 на максимальный размер раздела, стало серьёзной проблемой. Предел в 2 ГБайт на самом деле обусловлен не проблемами операционной системы, а существующим программами. На диске ёмкостью долее 2 ГБайт кластеры имеют размер 64 КБайт, или 65536 байт. Но самое большое значение, которое может быть представлено в 16 разрядах, составляет 65535; 64 КБайт — слишком большая величина для 16 разрядов. В Microsoft обнаружили, что при разработке многих программ исходили из предположения, что размер кластера умещается в 2 байта.

Даже если бы такой проблемы не возникло при объёме в 2 ГБайт, то операционная система всё равно не сможет работать с дисками ёмкостью свыше 4 ГБайт. При использовании FAT16 число секторов в кластере сохраняется самой OS в одном байте блока параметров диска. Это число должно быть кратным степени 2 и быть при этом меньше 256. Таким образом, в кластер может входить не более 128 секторов, или 64 КБайт. В итоге даже если ограничение в 2 ГБайт снимается, система FAT16 пригодна лишь для дисков ёмкостью менее 4 ГБайт.

Кроме того, в системе FAT файлам всегда выделяется целое число кластеров. На 1,2-ГБайт жёстком диске с 32 КБайт кластерами в каталоге может быть указано, что размер текстового файла, содержащего слова «Hello, world», составляет всего 12 байт, но на самом деле этот файл занимает 32 КБайт дискового пространства. Неиспользованная часть кластера называется потерянным местом (slack). В небольших файлах, каких множество, например, в системной папке Windows 9x, почти весь кластер может быть потерянным местом, а в среднем потери составляют половину размеров кластера.

В файловой системе FAT32 как элементы FAT, так и номера секторов 32-разрядные. Это значит, что максимальный размер диска теперь 2 ТБайт (2199023255552 байт).

Соседние файлы в папке HDD