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

ОГЛАВЛЕНИЕ……………………………………………………………………2

ВВЕДЕНИЕ……………………………………………………………………….3

 1.  ФАЙЛОВАЯ СИСТЕМА HPFS…………………………………………….4

 2.  ФАЙЛОВАЯ СИСТЕМА NTFS (New Technology File System)………….8

               2.1.  Архитектура NTFS…………………………………………………10

              2.2  Возможности файловой системы NTFS по ограничению доступа к файлам и каталогам………………………………………………………………..11

 ЗАКЛЮЧЕНИЕ……………………………………………………………………14

 СПИСОК ЛИТЕРАТУРЫ………………………………………………………...16



        





















ВВЕДЕНИЕ



В настоящее время на одном диске в среднем записывается несколько десятков тысяч файлов. Как разобраться во всем этом многообразии с тем, чтобы точно адресоваться к файлу? Назначение файловой системы – эффективное решение, указанной задачи. 

Файловая система с точки зрения пользователя — это «пространство», в котором размещаются файлы. Наличие файловой системы позволяет определить, как называется файл, где он находится. Мы рассмотрим четыре файловые системы – HPFS, NTFS.

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

В широком смысле понятие "файловая система" включает: 

совокупность всех файлов на диске, 

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

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

В данной работе мы рассмотрим такие файловые системы как HPFS и NTFS, их особенности.







ФАЙЛОВАЯ СИСТЕМА HPFS





Сокращение HPFS расшифровывается как «High Performance File System» -высокопроизводительная файловая система. HPFS впервые появилась в OS/2 1.2 и LAN Manager. HPFS была разработана совместными усилиями лучших специалистов компании IBM и Microsoft на основе опыта IBM по созданию файловых систем MVS, VM/CMS и виртуального метода доступа1. Архитектура HPFS начала создаваться как файловая система, которая сможет использовать преимущества многозадачного режима и обеспечит в будущем более эффективную и надёжную работу с файлами на дисках большого объёма.

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

В блоке (super block) содержится указатель на список битовых карт (bitmap block list). В этом списке перечислены все блоки на диске, в которых расположены битовые карты, используемые для обнаружения свободных секторов. В списке дефектных блоков перечислены все поврежденные секторы (блоки) диска. Когда система обнаруживает повреждённый блок, он вносится в этот список и для хранения информации больше не используется. 

Резервный блок (spare block) содержит указатель на карту аварийного замещения (hotfix map или hotfix-areas), указатель на список свободных запасных блоков (directory emergency free block list), используемых для операций на почти переполненном диске, и ряд системных флагов и дескрипторов. Этот блок размещается в

17 секторе диска. Резервный блок обеспечивает высокую отказоустойчивость файловой системы HPFS и позволяет восстанавливать повреждённые данные на диске.

Файлы и каталоги в HPFS базируются на фундаментальном объекте, называемом F-Node. 

Объект F-Node содержит длину и первые 1 5 символов имени файла, специальную служебную информацию, статистику по доступу к файлу, расширенные атрибуты файла и список прав доступа (или только часть этого списка, если он очень большой), ассоциативную информацию о расположении и подчинении файла и т. д. Структура распределения в F-node может принимать несколько форм в зависимости от размера каталога или файлов. HPFS просматривает файл как совокупность одного или более секторов. 

В файловом узле можно разместить информацию максимум о восьми экстентах файла. Если файл имеет больше экстентов, то в его файловый узел записывается указатель на блок размещения (allocation block), который может содержать до 40 указателей на экстенты или, по аналогии с блоком дерева каталогов, на другие блоки размещения. Таким образом, двухуровневая структура блоков размещения может хранить информацию о 480 секторах, что позволяет работать с файлами размером до 7,68 Гбайт. 

«Полоса», находящаяся в центре диска, используется для хранения каталогов. Эта полоса называется directory band. Как и все остальные «полосы», она имеет размер 8 Мбайт. Расположение этой информационной структуры в середине диска значительно сокращает среднее время позиционирования головок чтения/записи. 

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

Размер каждого из блоков, в терминах которых выделяются каталоги в текущей реализации HPFS, равен 2 Кбайт. Размер записи, описывающей файл, зависит от размера имени файла. Если имя занимает 1 3 байтов (для формата 8.3), то блок из 2 Кбайт вмещает до 40 описателей файлов. 

Теперь кратко рассмотрим вопрос надёжности хранения данных в HPFS. Любая файловая система должна обладать средствами исправления ошибок, возникающих при записи информации на диск. Система HPFS для этого использует механизм аварийного замещения (hotfix).

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

Для каждого замещённого блока (сектора) программа CHKDSK выделяет новый сектор в наиболее подходящем для файла (которому принадлежат данные) месте жёсткого диска. Затем программа перемещает данные из запасного блока в этот сектор и обновляет информацию о положении файла, что может потребовать новой балансировки дерева блоков размещения. После этого CHKDSK вносит повреждённый сектор в список дефектных блоков, который хранится в дополнительном блоке HPFS, и возвращает освобожденный сектор в список свободных запасных секторов резервного блока. Затем удаляет запись из карты аварийного замещения и записывает отредактированную карту на диск.

HPFS относится к так называемым монтируемым файловым системам. 

Наконец, следует сказать и ещё об одной системе управления файлами - речь идет о реализации HPFS для работы на серверах, функционирующих под управлением OS/2. Это система управления файлами, получившая название HPFS386.IPS. 















































ФАЙЛОВАЯ СИСТЕМА NTFS (New Technology File System)



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

Таким масштабным приложениям необходима адекватная файловая система. Безусловно, FAT, которая использовалась в свое время в MS-DOS, не подходит для этой роли. Даже более современная HPFS, разработанная для операционной системы OS/2, нуждается в значительной модификации. (В частности, в HPFS жестко определен размер блока как единицы выделения дискового пространства – 512 байт, а размер файла ограничен 4 Гбайт.) Поэтому разработчики Windows NT решили создать для нее новую файловую систему – NTFS. Она продолжает использоваться в Windows 2000 и отвечает ряду ключевых требований.

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

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

– Избыточность данных и отказоустойчивость. Необходима определенным категориям приложений, для которых недопустима потеря данных из-за отказа носителя. Многослойная структура системы ввода-вывода позволяет динамически загружать необходимые дисковые драйверы, в частности обеспечить зазеркаливание и чередование дисков.

– Поддержка больших дисков и файлов. Размер полей данных, в которых хранятся значения объемов диска и файла, достаточен для того, чтобы не служить ограничением. Кроме того, каждый компонент путевого имени (файла или каталога) может иметь длину до 255 символов.

Далее описаны характеристики NTFS, отличающие ее от предыдущих систем.

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

– Хранение имен в кодировке Unicode. Благодаря использованию универсальной 16-разрядной кодировки имен файлы можно свободно переносить с одного компьютера на другой. Такая разрядность обеспечивает уникальное представление каждого символа существующих естественных языков. Имена файлов могут содержать пробелы и произвольное количество точек.

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

– Замена секторов. Суть технологии заключается в динамической замене потерянных данных, когда сектор диска становится нечитаемым. Для этого используется метод их избыточного хранения. Если отказоустойчивый драйвер не был загружен, NTFS заменяет поврежденный сектор и больше его не использует, но восстановить его данные не может.

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

– Сменные диски. NTFS не предназначена для гибких дисков, поскольку стандартом для них является FAT, но ее можно использовать на сменных носителях других типов, таких как диски Бернулли. Сменные диски, отформатированные для NTFS, защищены теми же механизмами контроля доступа, что и постоянные.

 

Архитектура NTFS



 NTFS является надежной и быстрой файловой системой, интегрированной в многоуровневую модель загружаемых драйверов, на основе которой построена вся система ввода-вывода Windows NT и 2000.

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



2.2  Возможности файловой системы NTFS по ограничению доступа к файлам и каталогам



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

		нет доступа (no access) (None) (нет);

полный доступ (full control) (All)(All) (все)(все);

право чтения (read) (RX)(RX) (чтение)(чтение);

право добавления (add) (WX)(not specified) (запись/выполнение не указано);

право добавления и чтения (add&read) (RWX)(RX) (чтение/запись/выполнение) (чтение/выполнение);

право просмотра (list) (RX)(not specified) (чтение/выполнение)(не указано);

право изменения (change) (RWXD)(RWXD) (чтение/запись/ выполнение/ удаление) (чтение/запись/выполнение/удаление).

Обратите внимание на два выражения в скобках, указанные после имени права доступа. Первое выражение относится к самой папке, а второе - ко всем файлам, которые могут быть созданы внутри неё. Например, при полном доступе для папки разрешаются любые действия, однако пользователь с полным доступом к папке также будет обладать полным правом доступа ко всем созданным в ней файлам (если только права доступа к файлу не были изменены его владельцем или администратором). Другими словами, в NTFS файлы и папки по умолчанию наследуют права доступа, установленные для их родительской папки, однако эти права могут быть изменены любым пользователем, которому разрешено изменять права доступа для соответствующих объектов NTFS.

Файлы в NTFS могут обладать следующими правами:

		полный доступ (full control) (All) (все);

нет доступа (no access) (None) (нет);

право изменения (change) (RWXD) (чтение/запись/выполнение/удаление);

право чтения (read) (RX) (чтение/выполнение).

Для прав доступа NTFS, как и для прав общих каталогов, действует принцип поглощения. Исключение составляет право «нет доступа», отменяющее действие всех остальных прав.

При сетевом подключении пользователей права NTFS могут вступить в конфликт с правами общих каталогов. В такой ситуации применяется право доступа с наиболее жесткими ограничениями. У многих возникают проблемы с пониманием получаемых при сетевом доступе ограничений. Однако здесь можно легко разобраться, если помнить, что при доступе по сети к каталогам и файлам, располагающихся на томах с NTFS, у нас получаются задействованными два последовательных механизма. Сначала мы получаем доступ к файлам, который был определён сетевыми механизмами. Это право «нет доступа» - «по access», право на «чтение» - «read», право «изменение» - «change» и «полный доступ» - «full control». После этого вступают в силу ограничения на файлы и каталоги, определённые свойствами NTFS. Помимо перечисленных прав имеется ещё так называемый специальный доступ (Special Access). Если выбрать это право доступа, то на самом деле появляется возможность выбирать несколько прав одновременно из следующего перечня:

		полный доступ (full control) (All);

чтение (read) (R);

запись (write) (W);

выполнение (execute) (X);

удаление (delete) (D);

изменение разрешений (change permissions) (P);

изменение владельца (take ownership) (O).

Рассмотрим теперь, что происходит с правами на защищённые файлы в NTFS при их перемещении. Папки более высокого уровня в NTFS обычно обладают теми же правами, что и находящиеся в них файлы и папки. Если папка или файл перемещается в другую папку того же раздела NTFS, то атрибуты безопасности не наследуются от нового объекта-контейнера. Например, если из папки с правами чтения для группы everyone файл перемещается в папку того же раздела с полным доступом для той же группы, то для перемещенного файла будет сохранено исходное право чтения. Дело в том, что при перемещении файлов в границах одного раздела NTFS изменяется только указатель местонахождения объекта, а все остальные атрибуты (включая атрибуты безопасности) остаются без изменений.

Три следующих важных правила помогут определить состояние прав доступа при перемещении или копировании объектов NTFS:

		При перемещении файлов в границах раздела NTFS сохраняются исходные права доступа.

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

При перемещении файлов из раздела NTFS в раздел FAT все права NTFS теряются.











ЗАКЛЮЧЕНИЕ

 

 Cегодня в Windows применяются файловые системы: FAT, FAT32, HPFS и NTFS.
HPFS была первой файловой системой для ПК, в которой была реализована поддержка длинных имен. HPFS, как FAT и многие другие файловые системы, обладает структурой каталогов, но в ней также предусмотрены автоматическая сортировка каталогов и специальные расширенные атрибуты2, упрощающие реализацию безопасности файлового уровня и создание множественных имен. HPFS поддерживает те же самые атрибуты, что и файловая система FAT, по историческим причинам, но также поддерживает и новую форму file-associated, то есть информацию, называемую расширенными атрибутами (EAs ). 

Некоторые из возможностей, обеспечиваемых на сегодняшний день только файловой системой NTFS,    перечислены ниже: 

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

2). Встроенные средства восстановления данных; поэтому ситуации, когда пользователь должен запускать на томе NTFS программу восстановления 

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

3). Реализованная в виде бинарного-дерева структура папок файловой системы NTFS позволяет существенно ускорить доступ к файлам в папках большого объема по сравнению со скоростью доступа к папкам такого же объема на томах FAT. 

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

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



























СПИСОК ЛИТЕРАТУРЫ



Гук М. Аппаратные средства IBM PC: Бестселлер - 2-е изд.: Питер, 2005.

В.Э. Фигурнов «IBM PC для пользователя» - 7е изд., перераб. и доп. – М. ИНФА-М, 1998.

1. Гордеев А.В., “Операционные системы”, СПб: Питер, 2006 г.

2. Попов И.И., “Операционные системы, среды и оболочки”, Москва: Инфра-М, 2003 г.

3. Бойс Д., “От установки до оптимизации работы Windows XP”, Москва: НТ Пресс, 2007 г.

	Операционные системы, среды и оболочки: Учебное пособие. -М.: ФОРУМ: ИНФРА -М, 2006. -400 с: ил. -( Профессиональное образование)

	Операционные системы / Д. Бэкон, Т. Харрис. – СПб.: Питер; Киев: Издательская группа BHV, 2004. – 800 с: ил.

	Основы операционных систем. Курс лекций. Учебное пособие / В.Е. Карпов, К.А. Коньков / Под редакцией В.П. Иванникова. – М.: ИНТУИТ.РУ «Интернет-Университет Информационных Технологий», 2004. – 632 с.

В.Э.Фигурнов IBM для пользователя.	Издательский дом «ИНФРА-М»,2001.- 480с.:ил. 

гордеев А. В. Операционные системы: Учебник для вузов. — 2-е изд. — СПб.: Питер, 2007. — 416 с. 



1