![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Таблица 6.1. Наиболее употребительные атрибуты файлов
Атрибут | Значение |
Защита | Кто и каким образом может получить доступ к файлу |
Пароль | Пароль для получения доступа к файлу |
Создатель | Идентификатор создателя файла |
Владелец | Текущий владелец файла |
Флаг "только для чтения" | 0 – для чтения-записи, 1 – только для чтения |
Флаг "скрытый" | 0 – обычный, 1 – не отображать в перечне файлов |
Флаг "Системный" | 0 – обычный, 1 – системный |
Флаг "архивный" | 0 – прошедший резервное копирование, 1 – нуждающийся в резервном копировании |
Флаг ASCII-двоичный | 0 – использован код ASCII, 1 – двоичный файл |
Флаг произвольного доступа | 0 – только последовательный доступ, 1 – произвольный доступ |
Флаг "временный" | 0 – обычный, 1 – удалять по окончании процесса |
Флаги блокировки | 0 – не заблокирован, иначе – заблокирован |
Длина записи | Количество байтов в записи |
Позиция ключа | Смещение ключа внутри каждой записи |
Длина ключа | Количество байтов в поле ключа |
Время создания | Дата и время создания файла |
Время последнего доступа | Дата и время последнего доступа к файлу |
Время внесения последних изменений | Дата и время внесения последних изменений |
Текущий размер | Количество байтов в памяти |
Максимальный размер (устарел) | Предельное количество байтов, до которого файл может увеличиваться |
Примечание: Атрибуты, имеющие отношение к ключу используются для поиска данных |
Как известно, информация, которой пользуется человек, должна быть структурирована. С этой целью на дисках и других устройствах долговременного хранения информации организуются каталоги – специальные системные файлы, содержащие списки ссылок на файлы.
6.2. Понятие и функции файловой системы
и системы управления файлами.
Файловая система – это понятие, имеющее два смысла в зависимости от контекста использования:
· принципы доступа к данным, организованным в файлы;
· организация (способ размещения) файлов на том или ином носителе.
Система управления файлами – это комплекс программных модулей, обеспечивающих работу с файлами в конкретной операционной системе по принятым спецификациям (описаниям объектов) файловой системы.
Файловая система позволяет перевести на логический уровень общение пользователя с файлами. Появляются логические диски, обозначенные латинскими буквами, например "а:", "с:" и т.д. К файлам обращаются по именам, а не по их физическим адресам на дисках. Файловая система определяет и способ организации данных и программ на дисках и иных носителях. Наиболее известны файловые системы FAT (ныне FAT-12), FAT-16, FAT-32, NTFS, CDFS и др.
Система управления файлами предоставляет пользователю интерфейс для работы с файлами и обеспечивает выполнение следующих функций:
· создание, удаление, переименование и другие операции с файлами как и программ пользователя, так и командами операционной системы или специальных программных средств для работы с файлами;
· работа с недисковыми периферийными устройствами как с файлами;
· обмен данными между устройствами, устройствами и файлами и меду файлами;
· работа с файлами посредством обращения к программным модулям системы управления файлами;
· защита файлов от несанкционированного доступа.
Система управления файлами обращается к программным модулям операционной системы, используя функции пользовательского интерфейса API. Эта система разрабатывается для каждой конкретной операционной системы, и будет работать только в ней, несмотря на то, что другая операционная система будет использовать ту же файловую систему. Это объясняется тем, что программные модули системы управления файлами и операционной системы в целом различны. Но, в принципе, файлы созданные в одной операционной системе могут быть доступны в другой операционной системе, поддерживающей ту же файловую систему.
Операционная система может поддерживать несколько систем управления файлами и работать с ними одновременно или одной из нескольких. Дополнительные системы управления файлов можно доустанавливать в операционную систему. Такие системы управления файлами называются монтируемыми. При монтировании одна файловая система выбирается корневой и в её каталоге создаётся подкаталог, который является корневым для монтируемой системы.
Различают три структуры файловых систем: одноуровневые, иерархические, сетевые (рис. 6.1). Прямоугольниками на рис. 6.1 показаны каталоги, окружностями – файлы. Во всех структурах на каждом носителе предусматривается корневой каталог. Одноуровневая система каталогов предусматривает существование только корневого каталога, а все файлы числятся в этом каталоге.
В иерархической и сетевой структурах предусматривается вхождение в любой каталог множества каталогов. Каталог, содержащий вложенные каталоги называется родительским или надкаталогом. Вложенные каталоги называются подкаталогами.
![]() | ![]() | ![]() |
Рис. 6.1. Структуры файловых систем: одноуровневая (а), иерархическая (б), сетевая (в) |
В иерархической структуре файл может входить (числиться) только в одном каталоге и иметь только одно полное имя файла. Иерархическая структура файловой системы имеет и другое название – древовидная. В сетевой структуре файл может входить в два и более каталогов и иметь несколько полных символьных имён, но только одно уникальное цифровое имя.
6.3. Обзор файловых систем
6.3.1. Файловая система FAT16, FAT32 и VFAT
Файловые системы FAT16, VFAT и FAT32 получила своё название по основному элементу этих файловых систем – таблице размещения файлов (File Allocation Table). Все три файловых системы предполагают разбивку диска на секторы и объединение нескольких секторов, идущих друг за другом, в кластеры. FAT16 является 16-разрядной файловой системой, позволяющей обращаться к 216 кластерам.
Файловая система FAT16 использовала формат имени файла 8.3: 8 символов отводилось для имения и 3 символа для расширения имени файла. Это достаточно жёсткое ограничение усугублялось ограниченным набором символов, допускавшихся для образования имени файла и его расширения.
Поэтому в операционных системах Windows 95 и NT, а затем и в исходных версиях Windows 2000 и XP появились файловые системы VFAT (виртуальная FAT) и FAT32. Файловая система VFAT поддерживает длинные имена файлов и совместима со стандартной системой FAT16. Совместимость обеспечивается наличием специальных утилит. Недостатком VFAT являются большие потери на кластеризацию и ограничения на размер логического диска. FAT32 является самостоятельной 32-разрядной файловой системой, наиболее совершенной из описываемых трёх систем.
Во всех трёх файловых системах пространство логического диска делится на системную область и на область данных. Обязательным элементом всех трёх систем является загрузочная запись, расположенная в начале диска
(табл. 6.2). Она состоит из блока параметров диска (BDP) и системного загрузчика (SB). Во всех трёх файловых системах присутствуют каталоги и файлы, которые описываются как файловый объект. Структуры файловых объектов в системах FAT16, VFAT и FAT32 показаны на рис. 6.2.
Таблица 6.2. Структура загрузочной записи | FAT32 | Содержимое | Безусловный переход на системный загрузчик | Системный идентификатор | Размер сектора, байт | Число секторов в кластере | Число зарезервированных секторов | Число копий FAT-таблицы | 0000h | 0000h | Дескриптор носителя | 0000h | Число секторов на дорожке | Число рабочих поверхностей |
Обозначение поля | Jmp 3Eh | SectSize | ClstSize | ResSecs | FATcnt | RootSize | TotSecs | Media | FATSize | TrcSecs | HeadCnt | |||
Длина поля, байт | ||||||||||||||
FAT16 | Содержимое | Безусловный переход на системный загрузчик | Системный идентификатор | Размер сектора, байт | Число секторов в кластере | Число зарезервированных секторов | Число копий FAT-таблицы | Максимальное число элементов корневого каталога | Число секторов на логическом диске объёмом до 32 Мбайт, иначе 0000h | Дескриптор носителя | Размер FAT в секторах | Число секторов на дорожке | Число рабочих поверхностей | |
Обозначение поля | Jmp 3Eh | CectSize | ClastSize | ResCecs | FATcnt | RootSize | TotSecs | Media | FATsize | TrcSecs | HeadCnt | |||
Длина поля, байт | ||||||||||||||
Смещение, байт | 00h | 03h | 0Bh | 0Dh | 0Eh | 10h | 11h | 13h | 15h | 16h | 18h | 1Ah |
Таблица 6.2. (продолжение) | FAT32 | Содержимое | Число скрытых секторов | Число секторов на логическом диске | Число секторов в таблице FAT | – | – | – | Расширенные флаги | Версия файловой системы | – | Номер первого кластера корневого каталога | Номер сектора с резервной копией загрузочного сектора | Зарезервировано | Системный загрузчик | – | * Том –логическое дисковое пространство, состоящее из одного или нескольких разделов, которое может быть воспринято файловой системой как один логический диск |
Обозначение поля | HidnSecs | – | |||||||||||||||
Длина поля, байт | – | – | – | – | – | ||||||||||||
FAT16 | Содержимое | Число скрытых секторов | Число сектров на логическом диске до 32 Мбайт | Тип диска (00h – FDD, 80h – HDD) | Зарезервирован | Маркер с кодом 29h | Серийный номер тома | – | – | Метка тома* | – | – | Имя файловой системы | Системный загрузчик | Сигнатура (слово AA44h) | ||
Обозначение поля | HidnSecs | ||||||||||||||||
Длина поля, байт | – | – | – | ||||||||||||||
Смещение, байт | 1Ch | 20h | 24h | 25h | 26h | 27h | 28h | 2Ah | 2Bh | 2Ch | 34h | 36h | 3Eh | 1Feh |
Структура каталога для короткого имени FAT16 | Размер файла в байтах | Структура каталога для короткого имени FAT132 | Размер файла в байтах | Структура каталога для длинного имени VFAT и FAT32 | 6 – 11 символы имения файла в кодировке Unicode | Рис. 6.2. Структура файлового объекта | ||||
Номер начального кластера | Младшее слово номера начального кластера | 0000h | ||||||||
Дата последней записи | Дата последней записи | 6 – 11 символы имения файла в кодировке Unicode | ||||||||
Время последней записи | Время последней записи | |||||||||
Зарезервировано | Старшее слово номера начального кластера | |||||||||
Дата последнего доступа | ||||||||||
Дата создания файла | ||||||||||
Время создания файла | ||||||||||
Контрольная сумма | ||||||||||
Зарезервировано | Зарезервировано | |||||||||
Атрибуты | Атрибуты | Атрибуты | ||||||||
Имя файла в формате 8.3 (имя – 8 символов, расширение – 3 символа) | Имя файла в формате 8.3 (имя – 8 символов, расширение – 3 символа) | 1 – 5 символы имени файла в кодировке Unicode | ||||||||
На рис. 6.3 показана структура логического диска в системе FAT16. В этой файловой системе системная область создаётся при форматировании диска и включает в себя:
загрузочную запись BR (Boot Record), структура которой приведена в табл. 6.2;
зарезервированных секторов Rsec (Reserved Sectors);
двух копий (основной и резервной) таблицы размещения файлов FAT1 и FAT2;
корневого каталога диск Rdir (Root Directory).
Рис. 6.3. Структура логического диска в FAT16
Таблицы размещения файлов содержат в себе:
перечень непосредственно адресуемых участков логического диска, отведённых для размещения на них файлов или их фрагментов;
перечень адресов свободных областей дискового пространства;
перечень адресов дефектных областей диска.
Область данных содержит обычные файлы и файлы-каталоги. В отличие от системной области область данных доступна через элементы пользовательского интерфейса операционной системы. Она разбита на кластеры, включающие в себя от 4 до 64 секторов и имеющие размеры в пределах 2 – 4 Кб. Размеры кластеров зависят от ёмкости раздела физического диска, отведённого под логический диск. Разбивка области на кластеры выполняется в следующих целях:
уменьшение таблицы FAT;
уменьшение возможной фрагментации файлов;
ускорение доступа к файлу.
Однако выделение для файла целых кластеров приводит к потерям дискового пространства в среднем по половине кластера на файл.
Описание файловых объектов приведено на рис. 6.2. Размещение файлов на диске показано на рис. 6.4.
Рис. 6.4. Описание файла и кластеры области данных, отведённых под файл
Кластеры с номерами 00 – 1В показаны прямоугольниками. Номера кластеров стоят над их обозначениями. Символы "00" указывают, что кластеры свободны. Символы "F7" внутри обозначения 18-о кластера указывает, что этот кластер дефектный.
Номер начального кластера файла указан в описании. Файл расположен в двух цепочках кластеров 08, 09, 0А, 0В и 15, 16, 17, 18, 19, 1А, 1В. Числа внутри обозначений этих кластеров размещаются после данных, записанных в кластер, и указывают номера последующих кластеров в цепочке. В конце последнего кластера в цепочке стоит код FF – указывающий на завершение файла.
Для обращения к кластеру используется 16-разрядное слово. Отсюда и появилось число 16 в обозначении файловой системы. Вариант файловой системы super-FAT применяется в операционной системе OS/2.
VFAT является файловой системой поддерживающей длинные имена. Её основным недостатком являются большие потери на кластеризацию. От этого недостатка в значительной мере свободна FAT32, которая является самостоятельной 32-разрядной файловой системой, и имеет следующие особенности:
применение для адресации кластеров 28 бит из 32 позволяет адресовать 228 кластеров, поэтому кластеры в этой файловой системе имеют меньший размер, и потери дискового пространства на кластеризацию меньше, чем в FAT16 и VFAT;
возможность использования резервной копии таблицы FAT вместо стандартной;
представление корневого каталога как обычной цепочки кластеров и, как следствие, возможность перемещения корневого каталога и снятие ограничения на размер корневого каталога;
расширенная загрузочная запись, позволяющая создавать резервные копии критически важных структур данных и, как следствие повышенная устойчивость дисков FAT32 к нарушениям структуры таблицы FAT;
использование для представления длинных имён файлов элементов каталогов, в т.ч. и корневого.
Поддержка длинных имен в системах VFAT и FAT32 проиллюстрирована на рис. 6.2. Имена файлов записываются в кодировке Unicode. Имя файла разделено на три части, содержащие 1 – 5, 6 – 11 и 12 – 13 символы. В описании файлового объекта с длинным именем отсутствуют даты и время создания файла, последней записи в файл, последнего доступа к файлу, а также сведения о номере начального кластера. Сведения о начальном номере кластера и отсутствущие данные о файле операционная система может взять из описания файлового элемента с коротким именем.
6.3.2. Файловая система NTFS
Файловая система NTFS оперирует с общим понятием "ТОМ", частным случаем которого является логический диск. Возможно также создание отказоустойчивого тома, занимающего несколько разделов, с использованием RAID-технологии. Применение RAID-технологии позволяет повысить или быстродействие диска, или его надёжность, или то и другое вместе. Следует иметь в виду, что при установке операционной системы для использования RAID-технологии требуются так называемые динамические диски, представляющие стандарт распределения дискового пространства фирмы Microsoft. Они несовместимы с промышленным стандартом. Поэтому если диски будут преобразованы в динамические, то на этот жёсткий диск не дастся установить ни одну операционную систему, а ранее установленные операционные системы не смогут даже запуститься. Обратное преобразование динамических дисков в стандартные диски без полной потери данных невозможно [1].
Структура тома NTFS показана на рис. 6.5. Том состоит из следующих частей:
зона главной таблицы файлов MFT (12% ёмкости тома)
обычная зона файлов и каталогов (88% ёмкости тома), которая делится на две области;
копии первых 16 записей таблицы MFT, занимающие часть обычной зоны.
$MFT | Зона MFT | Зона файлов и каталогов (область 1) | Копии первых 16 записей MFT | Зона файлов и каталогов (область 2) |
Рис. 6.5. Структура тома NTFS
Всё пространство тома делится на кластеры. Поддерживаются кластеры размером от 512 байт до 64 Кбайт. Увеличение размера кластера более чем до 4К исключает сжатие файлов и каталогов [1].
Главная таблица MFT является файлом и содержит сведения о всех остальных файлах имеющихся на диске, в том числе и о самой MFT. Она содержит имена файлов, размеры, адреса на диске файлов и их фрагментов и т.д. Таблица поделена на записи размером 1К, соответствующие файлам. Файлы, имеющие размер не более 100 байтов записываются непосредственно в таблицу MFT. Первые 16 файлов, упомянутые в таблице являются служебными и недоступны через интерфейс операционной системы. Эти файлы называются метафайлами (табл. 6.3) и находятся в корневом каталоге.
Таблица 6.3. Метафайлы тома NTFS
Имя метафайла | Описание |
$MFT | Главная таблица файлов |
$MFTmirr | Копия первых 16 записей MFT |
$LogFile | Файл журналов |
$Valume | Служебная информация: метка тома и версия файловой системы |
$AttrDef | Список стандартных аттрибутов на томе |
$ | Корневой каталог |
$BitMap | Битовая карта свободного места тома |
$Boot | Загрузочный сектор |
$Quota | Файл прав пользователей |
$Upcase | Таблица соответствия строчных и прописных букв в именах файлов |
Копия информации о метафайлах помещена в зоне файлов и каталогов. Зона MFT заполняется по мере роста таблицы MFT.
Файловая система NTFS имеет следующие особенности:
файл идентифицируется 64-разрядной числом, которое называется файловой ссылкой и состоит из номера файла в таблице MFT и номера последовательности, который увеличивается всякий раз, когда позиция файла MFT используется повторно;
файлы представлены потоками данных, которыми являются данные, хранящиеся в файле, их неосновные атрибуты, сведения об авторе и содержании файла и т.д.;
наличие средств самовосстановления:
механизмы проверки целостности системы (журналы транзакций, журналы изменений и т.д.);
механизм отката при наличии незавершённых операций
процедуры внутренней проверки целостности файловой системы;
поддержка дисков с большими объёмами;
повышенная отказоустойчивость;
эмуляция других файловых систем;
параллельная обработка потоков данных;
сжатие отдельных файлов и каталогов;
шифрование файлов (не рекомендуется);
ограничение доступа к файлам и каталогам посредством создания специальных расширенных атрибутов файлов и каталогов;
мощная модель безопасности.
В числе особенностей файловой системы NTFS упоминается наличие средств самовосстановления, в частности поддержка журналов транзакций и изменений. Журналы транзакций являются специальными файлами, которые позволяют воспроизвести операции записи на диск. Журналы изменений также являются системными файлами, в которых ведётся протокол изменения файловой структуры. Каждой такой операции соответствует одна запись в журнале изменений, которая помечается как незавершённая. Если операция успешно выполнена, то пометка снимается. В случае сбоя или прерывания операции любым способом пометка сохраняется. При последующей перезагрузке процедура внутренней проверки целостности файловой системы обнаруживает пометки незавершённых операций и восстанавливает первоначальное состояние системы, т.е. задействует механизм отката.
Поддержка диска с большими объёмами дискового пространства позволяет получить логические диски с объёмами во много раз превышающими существующие технические возможности: 16 Эбайт (Эбайт – обозначение единицы объёма диска экзобайт, составляющего 264 байт или приблизительно 16 млрд. гигабайт). Кроме того, встроенные средства сжатия файлов и каталогов обеспечивает существенную экономию дискового пространства. Сжатие можно назначать отдельно взятым томам, логическим дискам, каталогам и файлам. При желании можно сжатие отменить.
NTFS поддерживает объектную модель безопасности, разработанную для Windows NT. В соответствии ней файловая система рассматривает файлы и каталоги как объекты. Для пользователей введены учётные записи. Пользователи могут объединяться в группы, для которых задаются права доступа к различным каталогам и файлам. Права доступа файлам и каталогам хранятся в списках управления доступом (ACL) каждого каталога и файла.
6.3.3. Файловые системы компакт-дисков
Первые накопители на компакт-дисках имели множество несовместимых файловых систем. Это было обусловлено отсутствием в первой спецификации хранения данных на CD описания файловой системы и универсальных файловых форматов. Первой попыткой ввести стандарт на файловые системы компакт-дисков является спецификация High Sierra, которая сделала компакт-диски универсальными компьютерными носителями. В настоящее время наиболее известными файловыми системами для компакт-дисков являются системы:
ISO 9660, CDFS, Joliet и UDF.
Стандарт ISO 9660 имеет три уровня:
первый уровень накладывает на файлы и каталоги жёсткие ограничения:
файлы не могут быть фрагментированы;
имена файлов могут быть записаны только в формате 8.3, поддерживающимся MS DOS, и содержать только символы A – Z, 1 – 9 и подчеркивание;
имя каталога не может содержать более 8 символов и не должно иметь расширение;
максимальный уровень вложенности каталогов не более восьми;
второй уровень разрешает имена файлов и каталогов длиной до 30 символов (включая расширение для файлов);
третий уровень разрешает длину имён файлов и каталогов до 30 символов и фрагментацию файлов.
Диск в стандарте ISO 9660 (рис. 6.6) имеет следующие элементы:
область идентификации и синхронизации;
системная область;
оглавление тома;
область данных.
Данные в таком томе начинаются с 16 сектора первой дорожки. На много сессионном томе создаётся несколько аналогичных структур.
Область идентификации и синхронизации | Системная область | Оглавление тома | Область данных |
Рис. 6.6. Структура односессионного тома на компакт-диске в стандарте ISO 9660
Стандарт CDFS разработан для операционных систем Windows NT и соответствует второму уровню стандарта ISO 9660.
Дата публикования: 2014-11-18; Прочитано: 286 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!