logo search
5

5.2. Файлы и файловые системы

 

Долговременно информация хранится на внешних носителях в виде файлов. При хранении придерживаются определенной организации данных, под которой понимают совокупность правил, определяющих особенности размещения данных на внешних устройствах, методы доступа к ним, средства защиты данных от несанкционированного доступа и т.п. Файловая система (англ. file system) — это система, определяющая способ организации, хранения и именования данных на носителях информации в компьютерах, а также в другом электронном оборудовании: цифровых фотоаппаратах, мобильных телефонах и т. п. Файловая система определяет формат содержимого и физического хранения информации, которую принято группировать в виде файлов.

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

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

Имена файлов должны удовлетворять следующим требованиям:

- имя файла должно иметь расширение, отделяемое от имени точкой;

- для записи имен файлов  используются буквы латинского и русского алфавитов и специальные знаки: (-) – минус, ( _ ) – подчеркивание, @, $, %  др.;

- в качестве имен файлов не должны использоваться следующие буквенные сочетания: AUX, CON, PRN, NUL, COM1, COM2, LPT1, LPT.

Имена файла подбираются таким образом, чтобы по нему можно было легко определить содержимое. Расширение имени, как правило, указывает на тип хранящихся в файле данных. В таблице представлены типовые расширения имен файлов:

Таблица 5.1 – Типовые расширения файлов

 

Типовое расширение

Содержимое файла

doc

Файл документа

bak

Резервная копия файла

bat

Командный файл

exe

Выполняемая программа

sys

Драйвер управления устройством

xls

Файл, созданный в электронной таблице MS Excel

rar

Архивный файл

html

Файл web-страницы

 

Кроме имени и расширения имени файла операционная система хранит для каждого файла дату его создания (изменения) и несколько флаговых величин, называемых атрибутами файла. Атрибуты файла – это дополнительные параметры, определяющие свойства файлов.

Основных атрибутов четыре: только для чтения, скрытый, системный, архивный.

Атрибут «Только для чтения» ограничивает возможности работы с файлом. Его установка означает, что файл не предназначен для внесения изменений.

Атрибут «Скрытый» сигнализирует операционной системе о том, что данный файл не следует отображать на экране при проведении файловых операций. Эта мера защиты против случайного  повреждения файла.

Атрибутом «Системный» помечают файлы, обладающие важными функциями в работе самой операционной системы. Его отличительная особенность в том, что средствами операционной системы его изменить нельзя. Как правило, большинство файлов, имеющих установленный атрибут «Системный», имеют также и установленный атрибут «Скрытый».

Атрибут «Архивный» в прошлом использовался для работы программ резервного копирования. Предполагалось, что любая программа, изменяющая файл, должна автоматически устанавливать этот атрибут, а средство резервного копирования должно его сбрасывать. Таким образом, очередному резервному копированию подлежали только те файлы, у которых этот атрибут был установлен. Современные программы резервного копирования используют другие средства для установления факта изменения файла, и данный атрибут во внимание не принимается, а его изменение вручную средствами операционной системы не имеет практического значения. 

Жесткие диски характеризуются возможностью предварительного разбиения их на несколько разделов. Поэтому в начальных секторах жесткого диска содержится информация о количестве разделов, их местоположении и размерах. Разделы жесткого диска рассматриваются как автономные виртуальные диски. Каждый из них инициализируются отдельно и имеет собственное имя (С:, D:, E).

Все современные дисковые операционные системы обеспечивают создание файловой системы, предназначенной для хранения данных на дисках и обеспечения доступа к ним. Принцип организации файловой системы – табличный. Поверхность жесткого диска рассматривается как трехмерная матрица, измерениями которой являются номера поверхности, цилиндра и сектора. Под цилиндром понимается совокупность  всех дорожек, принадлежащих разным поверхностям и находящихся на равном удалении от оси вращения.

Существуют различные виды файловых систем. Наиболее распространенными являются файловые системы FAT32 и NTFS.

Рассмотрим кратко каждую из этих систем.

1. Файловая система FAT32. Все современные дисковые операционные системы обеспечивают создание файловой системы, предназначенной для хранения данных на дисках и обеспечения доступа к ним. Принцип организации файловой системы – табличный. Поверхность жесткого диска рассматривается как трехмерная матрица, измерениями которой являются номера поверхности, цилиндра и сектора. Под цилиндром понимается совокупность  всех дорожек, принадлежащих разным поверхностям и находящихся на равном удалении от оси вращения. Данные о том, в каком месте диска записан тот или иной файл, хранятся в системной области диска в специальных таблицах размещения файлов (FAT-таблицах).

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

Достоинством такой организации является возможность осуществления прямого доступа к данным файла. Недостатком является постепенное фрагментирование диска при активной работе с файловой системой по уничтожению, созданию и изменению объемов файлов. При этом занимаемое файлами пространство «разорвано» по всему диску. Фрагментирование значительно увеличивает время доступа к данным на диске.

Наименьшей физической единицей хранения данных является сектор. Размер сектора равен 512 байт. Поскольку размер FAT-таблицы ограничен, то для дисков, размер которых превышает 32 Мбайт, обеспечить адресацию к каждому отдельному сектору не представляется возможным. В связи с этим группы секторов условно объединяются в кластеры. Кластер является наименьшей единицей адресации к данным. Размер кластера, в отличие от размера сектора, не фиксирован и зависит от емкости диска.

 

Рисунок 5.2 – Пример иерархической структуры каталогов и файлов

Каталог представляет собой справочник, содержащий сведения о местоположении, размере, дате и времени обновления файлов. Для каждого файла на диске имеется один элемент в определенном каталоге. Один элемент корневого каталога выделяется для метки диска. Файлы объединяются в каталоги по любому общему признаку, заданному их создателем (по типу, по принадлежности, по назначению, по времени создания и т.п.). Каталоги низких уровней вкладываются в каталоги более высоких уровней и являются для них вложенными, и называются подкаталогами. Верхним уровнем вложенности иерархической структуры является корневой каталог диска.

2. Файловая система NTFS (New Technology File System). С увеличением размеров жесткого диска файловая система FAT16 и FAT32 прекращают работать. На дисках больших объемов применяется файловая система NTFS. Файловая система NTFS условно диск делит на две части в соотношении 12% и 88 %. 12% диска предназначена под MFT зону - пространство, в которое растет метафайл MFT. Запись каких-либо данных в эту область невозможна. MFT-зона всегда держится пустой - это делается для того, чтобы самый главный, служебный файл (MFT) не фрагментировался при своем росте. Остальные 88% диска представляют собой обычное пространство для хранения файлов.

Каждый элемент файловой системы NTFS представляет собой файл, в том числе и  служебная информация. Самый главный файл на NTFS называется MFT, или Master File Table - общая таблица файлов. Именно он размещается в MFT зоне и представляет собой централизованный каталог всех остальных файлов диска. MFT поделен на записи фиксированного размера (обычно 1 Кбайт), и каждая запись соответствует какому либо файлу. Первые 16 файлов носят служебный характер и недоступны операционной системе - они называются метафайлами, причем самый первый метафайл - сам MFT. Эти первые 16 элементов MFT - единственная часть диска, имеющая фиксированное положение. Остальной MFT-файл может располагаться, как и любой другой файл, в произвольных местах диска - восстановить его положение можно с помощью его самого, "зацепившись" за самую основу - за первый элемент MFT.

Свободное место диска включает в себя всё физически свободное место. В свободное место диска могут также включаться незаполненные куски MFT-зоны. Механизм использования MFT-зоны таков: когда файлы уже нельзя записывать в обычное пространство, MFT-зона просто сокращается (в текущих версиях операционных систем ровно в два раза), освобождая, таким образом, место для записи файлов. При освобождении места в обычной области MFT зона может снова расширится.