Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сборка Часть2 / АВМиС / Лекции / =4Принципы построения фай-ловой системы.doc
Скачиваний:
76
Добавлен:
15.09.2014
Размер:
244.74 Кб
Скачать

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 О

ч ч ч ч ч м м м м м м с с с с с,

где ччччч - двоичное представление часов (0 - 23); мммммм -двоичное представление минут (0 - 59); ссссс - двоичное представление числа секундных единиц. Часто поле времени создания файла используется программами- вирусами для индикации того, что данный файл уже "заражен". Например, если поле мммммм задает заведомо некорректное значение 62, это, как правило, результат работы вируса.

Байты 24 - 25. Дата создания (последней модификации) файла

Биты в этих байтах используются следующим образом:

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 О

г г г г г г г м м м м д д д д д,

где ггггг - двоичное представление года (0-119, что соответствует годам с 1980 по 2099); мммм - двоичное представление месяца (1 - 12) ;ддддд-двоичное представление дня (1-31).

Байты 26 - 27. Номер первого кластера файла.

Байты 28-31. Размер файла в байтах.

Так как данное поле состоит из 4 байтов, максимальный размер файла равен 2 32 или 4Г байт.

Файловые системы fat32 и ntfs.

1. Файловые системы, применяемые в Windows

Windows поддерживает различные файловые системы, включая существующие файловые системы FAT и HPFS.

Windows также поддерживает редиректоры и серверы в качестве файловых систем. Кроме того, Windows может использовать файловую систему CD для работы с дисководами CD-ROM. Также поддерживаются Named Piles File System (NPFS) и Mailslot File System (MSFS), которые используются для связи между процессами. Подобные нетрадиционные файловые системы не рассматриваются.

Основное внимание сосредоточим на трех файловых системах FAT, HPFS и NTFS, которые могут использоваться на жестких дисках для операций чтения-записи.

История развития файловой системы

В 1981 г. фирма IBM представила первый персональный компьютер, который работал под управлением новой операционной системой MS-DOS, разработанной Microsoft. Этот компьютер содержал 16-разрядный процессор 8088 и два дисковода для гибких дисков низкой плотности. Файловая система MS-DOS, FAT (названа по ее таблице размещения файлов), предоставляла значительно больше возможностей, чем это реально требовалось для форматирования существующих маленьких дисковых объемов и управления иерархическими структурами каталогов и файлов. Эта файловая система продолжала удовлетворять потребности пользователей персональных компьютеров и в течение многих последующих лет, когда мощность аппаратных средств и программного обеспечения непрерывно возрастала. Однако поиск файлов и данных на больших жестких дисках стал производиться значительно менее эффективно по сравнению с первоначальными гибкими дисками низкой плотности первого персонального компьютера IBM.

К концу 1980-х предсказание «компьютер на каждый стол и в каждый дом» перестало быть мечтой и превратилось в реальность. В то время персональные компьютеры имели 16-разрядные процессоры и жесткие диски объемом 40 Мб и более; эти объемы были настолько большими, что пользователи вынуждены были создавать несколько разделов на диске вследствие ограничения размера одного раздела в 32 Мб (более поздние версии MS-DOS стали позволять использование значительно больших объемов).

В 1990 г. была создана высокоэффективная файловая система HPFS (High-performance file system), которая являлась частью операционной системы OS/2 версии 1.х. Эта файловая система разрабатывалась специально для больших жестких дисков 16-разрядных компьютеров. Вслед за HPFS появилась HPFS386. Она являлась частью Microsoft LAN Manager и была рассчитана на использование преимуществ 32-разрядных процессоров.

Сегодняшние персональные компьютеры имеют очень быстрые процессоры и могут содержать несколько жестких дисков очень больших объемов. NTFS разработана специально для оптимизации эффективности этих компьютеров.

Благодаря быстродействию и универсальности, FAT или HPFS являются очень популярными и широко используемыми файловыми системами. NTFS предлагает согласованность с этими двумя файловыми системами плюс расширенные функциональные возможности, необходимые для организаций, которые заинтересованы в большей гибкости и защите данных.

Файловая система FAT

Файловая система FAT названа в соответствии с наименованием метода организации данных — таблицы распределения файлов. Эта таблица обеспечивает связи одного распределяемого блока (одних или нескольких секторов) с другим.

Файловая система FAT является простой файловой системой, первоначально ориентированной на маленькие диски и простые структуры каталога.

Через несколько лет после создания была произведена доработка для обеспечения функционирования с действительно большими дисками и мощными персональными компьютерами. Для MS-DOS версии 4.0 элементы FAT были увеличены с 12 до 16 бит, позволив, таким образом, работать с разделами объемом более 32 Мб.

Рис.1.1 иллюстрирует организацию диска с использованием файловой системы FAT.

Блок параметров BIOS

FAT1

FAT2 (копия)

Корневой каталог

Область файла...

Рис. 1.1 Дисковый раздел (том) FAT

Корневой каталог имеет фиксированный размер и расположение на диске. Каталоги — специальные файлы с 32-байтовыми элементами для каждого файла, содержащегося в этом каталоге. Элемент для каждого файла включает следующую информацию:

 имя файла (восемь плюс три символа);

 байт атрибута (8 бит);

 время модификации (16 бит);

 дату модификации (16 бит);

 первый размещаемый блок (16 бит);

 размер файла (32 бита).

Эта информация используется всеми операционными системами, которые поддерживают файловую систему FAT. Кроме того, Windows может сохранять дополнительные отметки времени на элементе каталога FAT. Эти элементы позволяют определить момент последнего доступа к файлу; применяются преимущественно приложениями POSIX.

Биты байта атрибута файла в элементе каталога указывают, имеет ли файл соответствующие атрибуты. Установленный первый бит идентифицирует, что файл является подкаталогом; второй отмечает файл в качестве метки тома. Обычно, только операционная система может управлять назначениями этих битов. Кроме этого, файлы FAT имеют четыре специальных атрибута, которые могут применяться пользователем: архивный, системный, скрытый и только для чтения.

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

Некоторые дисковые утилиты сторонних производителей, которые взаимодействуют непосредственно с FAT, могут расценивать созданные Windows элементы каталога с длинным именем файла в качестве ошибок логической структуры дискового тома; попытки этих утилит по исправлению ошибок могут повредить элементы каталога или даже файлы. Не следует использовать дисковые утилиты сторонних производителей для восстановления или дефрагментации используемого Windows раздела FAT, если эти утилиты не были проверены на совместимость с Windows версии 3.5 и выше. Возможно безопасное использование утилит scandisk и chkdsk (входят в состав MS-DOS 6.0 и выше) для восстановления поврежденного раздела FAT, но не рекомендуется применение утилиты Defrag для дефрагментации раздела FAT, содержащего длинные имена файла, т. к. при этом отбрасывается информация о длинном имени файла.

По умолчанию, Windows 3.5 поддерживает длинные имена файла для разделов FAT.

Файловая система Windows FAT функционирует аналогично MS-DOS и Windows. Фактически, можно устанавливать Windows на существующем разделе FAT.

Внимание! Не следует забывать, что невозможно использование Windows с любым программным обеспечением сжатия или разбиения диска на разделы, если это программное обеспечение требует загрузки драйверов MS-DOS. Вероятно, для обеспечения чтения подобных дисков при использовании Windows необходимо иметь специальные драйверы Windows NT.

Допускается безболезненный перенос или копирование файлов с тома FAT на NTFS. При выполнении обратной операции (от NTFS к FAT) будет потеряна информация о разрешениях и альтернативных потоках.

Файловая система HPFS

HPFS имеет особенности, которые способствуют ее эффективному управлению большими объемами жесткого диска. HPFS также поддерживает длинные имена файла (до 255 символов).

Когда HPFS форматирует том, первые 18 секторов резервируются для блока начальной загрузки (boot block), суперблока (super block) и запасного блока (spare block). Эти три структуры используются для загрузки операционной системы, поддержки файловой системы и восстановления при возможных ошибках.

HPFS также резервирует пространство под два битовых массива (bitmap) объемом 2 Кб для каждого дискового интервала в 16 Мб. Каждый битовый массив отводит по одному биту для каждого размещаемого блока (равного одному сектору) в полосе 8 Мб, показывая, какие размещаемые блоки находятся в использовании.

Битовые массивы поочередно размещаются в конце и начале каждой полосы, обеспечивая таким образом максимальное количество непрерывного пространства для данных (16 Мб вместо 8 Мб). Кроме того, HPFS планирует запись новых файлов, оставляя участок памяти между новым и существующим файлом с тем, чтобы каждый файл имел участок памяти для расширения в непрерывном дисковом пространстве. Эта особенность помогает HPFS осуществлять быстрый поиск данных и минимизировать фрагментацию файлов.

Другая особенность, которая объясняет быстрый поиск в каталоге — использование HPFS технологии B-tree (В-дерево). B-tree — древовидная структура с корнем и несколькими узлами. Она содержит организованные некоторым логическим способом данные; этот способ позволяет производить быстрый просмотр всей структуры. Корень содержит административную информацию, карту для остальной структуры и, возможно, некоторые данные. Большинство данных содержат узлы. Для больших каталогов технология B-tree работает значительно эффективнее линейных списков, используемых файловой системой FAT.

HPFS использует B-tree для структуризации каждого каталога и каждого файла. Каждый каталог указывает на структуры Fnode для файлов, содержащихся в этом каталоге. Структура Fnode имеет размер 512 байт и содержит заголовок, имя файла (усеченное до 15 символов), длину файла, расширенные атрибуты (ЕА), список управления доступом (ACL) и расположение данных файла.

Внимание! ACL HPFS поддерживается операционной системой OS/2, но не Windows NT. Для использования списков управления доступом необходимо использование HTFS.

Благодаря расположению битовых массивов размер одного фрагмента может быть почти 16 Мб. Обычно Fnode может включать до 8 указателей на фрагменты. Если файл настолько большой, что восьми фрагментов не хватает для размещения всей информации, Fnode может включать до 12 указателей к узлам распределения, которые имеют пространство для большего количества фрагментов файла.

Если расширенный атрибут и ACL не могут быть включены в Fnode, Fnode содержит указатель на эту информацию.

Короче говоря, HPFS имеет мощные возможности и эффективно работает на дисках объемом до 2 Гб. Однако файловая система HPFS имеет и некоторые слабые стороны. Например, при повреждении первой части тома, которая содержит информацию начальной загрузки и указатель на корневой каталог, использование тома будет невозможно. Использование системой HPFS утилиты chkdsk при каждой начальной загрузке системы и восстановление диска после ошибок требуют больших временных затрат. Кроме того, HPFS предполагает использование 512-байтовых секторов, которые не очень подходят для больших томов.

Некоторые особенности HPFS используются в Windows иначе, чем в OS/2. Например, Windows не поддерживает информацию списка управления доступом HPFS или горячее фиксирование (эти возможности, однако, доступны с NTFS). Кроме того, управление кэшированием диска и ленивой записью производится диспетчером кэша Windows NT, а не файловой системой.

При перемещении или копировании файла из NTFS в HPFS теряются разрешения и альтернативные потоки; имена файла преобразуются из Unicode в наборы символов OEM. Кроме того, имя файла записывается без учета регистра.

Windows поддерживает HPFS прежде всего для обеспечения совместимости снизу вверх при выборочной загрузке OS/2 или Windows NT. NTFS обеспечивает все возможности HPFS, добавляя к ним дополнительные, такие как безопасность и надежность.

Если том не предназначен для работы с OS/2, форматирование его под NTFS более предпочтительно, чем под HPFS.

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