Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kt.doc
Скачиваний:
9
Добавлен:
26.09.2019
Размер:
590.34 Кб
Скачать

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

К долговременным устройствам хранения информации предъявляют следующие требования:

- устройства должны позволять хранить очень большие объемы данных

- информация должна сохраняться после прекращения работы процесса, использующего ее

- несколько процессов должны иметь возможность получения одновременного доступа к информации

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

Файлы относятся к абстрактному механизму и предоставляют способ сохранять информацию на диске и считывать ее. От пользователя скрываются такие детали как способ и место хранения информации, а также детали работы дисков. При создании файла процесс дает файлу имя. В разных системах используются разные правила именования, но большинство поддерживает 8-символьные текстовые строки. Часто разрешается использование в имени цифр и специальных символов, многие системы поддерживают имена длиной до 255 символов. Windows использует файловую систему MS-DOS и наследует многие ее свойства, однако NT имеет свою ФС NTFS. В MS-DOS расширение содержит до 3 символов, в UNIX его длина зависит от пользователя. У файла может быть несколько расширений. Расширение файла является всего лишь декларативным и не носит обязательный характер.

Файлы могут быть структурированы различными способами. 1. Файл может восприниматься как неструктурированная последовательность байт. В этом случае ОС не интересуется содержимым файла. Она видит только байты. Этот подход обеспечивает максимальную гибкость. 2. Файл представлен последовательностью записей фиксированной длины, каждая со своей внутренней структурой. Для таких файлов операция чтения и записи возвращает или пишет одну запись полностью. 3. Файл может представлять собой дерево записей, не обязательно одинаковой длины. Каждая запись в фиксированной позиции содержит поле ключа. Дерево отсортировано по ключу, что обеспечивает быстрый поиск.

ОС поддерживают в общем случае различные типы файлов. Например, в UNIX и Windows различают регулярные файлы и каталоги. Регулярные – все файлы, которые содержат информацию пользователя. Каталоги – это системные файлы, обеспечивающие поддержку структуры файловой системы. В UNIX поддерживаются символьные специальные файлы и блочные специальные файлы. ССФ используются для моделирования последовательных устройств вв, например, терминалы, принтеры, сеть и т.д. БСФ используются для моделирования дисков. Регулярные файлы в основном являются либо ASCII-файлами либо двоичными.

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

У каждого файла есть имя и данные. Дополнительная информация, связанная с файлом и учитываемая ОС, называется атрибутами.

Стандартный способ доступа к файлу сильно отличен от доступа к памяти. Для того, чтобы использовать единообразный интерфейс, файлы в некоторых ОС могут отображаться на память. Это можно представить в виде двух системных вызовов – map и unmap. Первый имеет на входе два параметра – имя файла и виртуальный адрес памяти, по которому ОС отображает

Реализация файловой системы. Простейший вариант организации самого файла на диске – непрерывный, когда файл занимает соседние блоки диска. Такая система легко организуется, обладает высокой производительностью, однако система очень быстро подвергается фрагментации Второй вариант – связные списки. В начале каждого блока, принадлежащего файлу, находится указатель на следующий блок. В этом случае фрагментация не так опасна, существенно снижаются потери дискового пространства, в каталоге достаточно хранить только адрес первого блока. Третий вариант – организация таблицы связных списков. В этом случае указатели на блоки хранятся не в самих блоках, а в отдельной таблице, загружаемой в память. Эта таблица называется FAT file allocation table. Основной недостаток в том, что вся таблица должна полностью находиться в памяти.

Файлы обычно организуются в каталоги, которые в свою очередь, являются файлами. Структуры каталогов. Одноуровневая. Имеется один каталог, в котором содержатся все файлы. Использовалась в ранних ВМ. Преимущества: простота и быстрота поиска файла. Недостатки: различные пользователи могут использовать для своих файлов одинаковые имена. Двухуровневая. Каждому пользователю выделяется каталог. При этом одинаковые имена файлов у разных пользователей уже не конфликтуют друг с другом. Иерархическая. При большом количестве файлов возникает необходимость логически группировать файлы. Т.о. необходимо дерево каталогов. Для указания файла требуется указывать путь, по которому он находится. Это либо абсолютное имя пути, начиная с корневого каталога и заканчивая тем, где расположен файл, либо относительное имя, указываемое относительно рабочего каталога. У каждого процесса свой рабочий каталог. Большинство ОС с иерархической структурой каталогов имеют специальные элементы в каждом каталоге “.” ”..”. Означающие соответственно текущий каталог и родительский каталог.

35. NTFS

NTFS (Новая технология File System) [1] является собственной файловой системы разработан корпорацией Microsoft для Windows, линии операционных систем , начиная с Windows NT 3.1 и Windows 2000 , включая Windows XP , Windows Server 2003 , и все их преемники до сих пор . [6]

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

При проектировании NTFS особое внимание было уделено следующим характеристикам:

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

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

- поддержка POSIX. (Portable Operating system for computing environments) Переносимая ОС для вычислительных сред. Разработан в 1988 и с 1990 является стандартом. Представляет собой набор функций, взятых из ОС AT&T UNIX System V и Berkeley Standart Distribution UNIX. Основное внимание этого стандарта уделено интерфейсу прикладных программ с ОС. Имеется механизм жестких ссылок, позволяющий ссылаться на один и тот же файл по нескольким именам.

- гибкость. Размер кластера может изменяться в пределах от 512 байт до 64 Кб. Поддержка длинных имен файлов и имена 8.3 для совместимости с FAT.

Максимально возможные размеры тома (и файла) составляют 16 экзабайт (264). В структуру каталогов заложена модель сба-лансированного бинарного дерева, имеются средства самовосстановления, поддерживается объектная модель безопасности NT, при которой все тома, каталоги и файлы рассматриваются как самостоятельные объекты. Безопасность обеспечивается на уровне файлов. Система обладает встроенными средствами сжатия.

Структура тома. NTFS делит все полезное дисковое пространство тома на кластеры, наиболее часто используется кластер в 2 или 4 Кб, поддерживая размеры от 512 байт до 64К. Дисковое пространство делится на 2 неравные части. 12% диска отво-дятся под зону MFT master file table. Запись в эту зону невозможна, она используется для роста метафайла MFT без фрагмен-тации. MFT представляет собой централизованный каталог всех остальных файлов диска, в том числе и себя самого. MFT разделен на записи размера в 1 Кб, каждая из которых соответствует какому-либо файлу. Размер файловых записей MFT для тома оп-ределяется во время форматирования и может находиться в пределах от 1 до 4 Кб. Первые 16 файлов носят служебный ха-рактер и недоступны ОС, называются метафайлами, причем первый файл – сам MFT. Эти 16 элементов имеют строго фик-сированное положение и имеют копию в середине диска. Остальные части MFT могут находиться в произвольных местах диска. Метафайлы находятся в корневом каталоге NTFS тома, их имена начинаются с $.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]