Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Os_Otvety.docx
Скачиваний:
153
Добавлен:
01.04.2022
Размер:
32.58 Mб
Скачать

44. Ntfs: структура тома, типы файлов, организация каталогов.

NTFS - это проприетарная файловая система от Microsoft для

всех операционных систем серии Windows NT (с 1993 г.).

Аббревиатура расшифровывается как New Technology File

System.

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

NTFS - не фрагментируется

1 -ый отрезок MFT - это метафайлы - служебные файлы

MFT-зона

Запись каких-либо данных в MFT -зону невозможна.Это делается для того, чтобы главный служебный файл (MFT) не фрагментировался при своем расширении.

Механизм использования MFT -зоны таков:

Когда файлы уже нельзя записать в обычное пространство, MFT -зона сокращается, тем самым освобождается место для записи файлов.

После освобождения участка обычной области MFT-зона может снова

расширяться.

Структура MFT

Каждый элемент файловой подсистемы NTFS представляет собой файл-

даже служебная информация. Главный файл NTFS называется MFT - главная таблица файлов. Она размещается в MFT-зоне и представляет собой централизованный каталог всех остальных файлов диска.

Атрибут состоит из тела и заголовка

Делятся на 2 типа : резидентные и нерезидентные

Резидентные хранятся в MFT

Нерезидентные хранят только заголовок

Если файл небольшой, то он полностью может поместиться в записи MFT размером 2 Кбайта

  • H- заголовок

  • SI - стандартная информация

  • FN - имя файла

  • SD - дескриптор безопасности

  • DATA - данные

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

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

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

Для сверхбольших файлов. Внешний атрибут может указывать на несколько нерезидентных атрибутов

Когда появляется запись IR(index root) - значит эта запись относится к каталогу

ia-index allocation указывает на размещение атрибутов

По мере того, как каталог растет, список файлов может потребовать не резидентной записи файлов, однако начальная часть списка остается резидентной в корневой части каталога MFT, имена файлов резидентной части списка - являются узлами(указателями) б-дерева

Имена файлов - размещаются в MFT, остальные части файла - вне MFT

Линейный список имен, отсортированный по алфавиту - делим на части, и имя последнего файла в каждой порции будет узлом. Имя последнего файла в атрибуте будет сохранено в резидентном атрибуте - для быстрого поиска. Для их поиска используется атрибут index location

45. Файловые операции. Процедура открытия файла.

read1 - получить дескриптор

Более надежный первый способ

Информация о файле находится в inode - индекс дескр

По имени файла отыскивается , далее из записи каталога мы узнаем номер индексного дескриптера, относ к этому файлу. И оттуда информация копируется в оперативную память, в структуру vnode

Каждый раз когда файл открывается, появляется структура “Struct file” в этой структуре описывается операция (read, write, …)

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

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

нужную запись на диске и копирует из нее характеристики файла в оперативную память.

Для хранения копии индексного дескриптора используются буферные области системного виртуального пространства. Характеристики индексного дескриптора, перенесенные в оперативную память, помещаются в структуру так называемого виртуального дескриптора vnode (virtual node). Структура vnode включает поля индексного дескриптора файла inode.