В. Столлингс - Операционные системы (1114679), страница 123
Текст из файла (страница 123)
н. При сбое системы порции диска, помеченные как используемые, должны': ~ь очищены перед их повторным размещением (метод очистки зависит от '!'; ~кретных характеристик файловой системы). в.7.':тпРАв~ж адйлА Ядро системы 1Лч1Х рассматривает файлы как потоки (последовательности);. ~тон. Любая внутренняя логическая структура Файлов связана с конкретными! ~ложениями. 1Лч1Х же работает с физической структурой файлов. Различают четыре типа Файлов ..
Обычные — файлы, содержащие информацию, введенную пользователем,',' прикладной программой или системной утилитой. ~. Каталоги — содержат списки имен файлов и указатели на индексные узлы ' (1пйех цойе — 1пойе), рассматривающиеся позже. Каталоги имеют иерархи-'„,' ческую структуру (см. рис. 12.4). Каталоги файлов представляют собой';,: обычные файлы, обладающие особыми привилегиями защиты от записи,- так что запись в них может произвести только Файловая система, в то вре-.',, мя как программам пользователя разрешен доступ для чтения.
3. Специальные — используются для доступа к периферий, у й таким, как терминалы или принтеры, Как упоминалось в разделе 11.3, ка ждое устройство ввода-вывода связано с определенным файлом. 4. Именованные — именованные каналы, рассматривавшиеся в разделе б.7. Здесь мы рассмотрим работу с обычными Файлами. Индексные узлы Таблица 12.4. Информация, содержащаяся в индексном узле на диске 01ч1Х 16-бнтовый флаг, хранящий права доступа и выполнения, связанные с Файлом: 12-14 Тип файла (обычный, каталог, специальный символьный или блочный, канал ИРО) 9-11 Флаги выполнения 8 Права владельца на чтение 7 Права владельца иа запись б Права владельца на выполнение 5 Права группы на чтение 4 Права группы на запись 3 Права группы на выполнение 2 Права остальных на чтение 1 Права остальных на запись О Права остальных на выполнение Количество ссылок каталога на этот узел Режим Файла Счетчик связей 1П владельца 1П группы Размер Файла Владелец файла Группа, владеющая файлом Количество байтов в файле 39 байт адресной информации Время последнего обращения к файлу Адреса Файла Послелиее обращение Последнее изменсвие Время последней модификации файла Изменение узла Время последней модификации узла Размещение файлов Размещение файлов выполняется поблочно, динамически„по мере необходимости.
Следовательно, блоки файла на диске не обязательно образуют непреРывную область. Для отслеживания файлов используется индексный метод; часть индекса хранится в узле файла. Узел включает 39 байт адресной информа- Управление всеми типами файлов операционной системы (ЛЧ1Х осуществляется посредством индексных узлов (1пойе). Узел является управляющей струк турой, содержащей ключевую информацию, необходимую операционной системе для работы с определенным файлом. С одним узлом может быть связано несколько имен Файлов, однако активный узел связан исключительно с одним файлом, и каждый Файл управляется исключительно одним узлом.
В узле сохраняются атрибуты файла и права доступа к нему, а также другая управляющая информация. В табл. 12.4 перечислено содержимое узла. 'Часть 5. Операции ввода-вывода и файль1,. Глана 12. Управление файлами ции, орга низованной как тринадцать 3-байтовых адресов, или указателей. Первые 10 адресов указывают на первые 10 блоков данных Файла. Если файл длиннее 10 блоков, то используется один или несколько уровней косвенности. Одиннадцатый адрес узла указывает на блок на диске (блок первого уровня косвенности), содержащий следующую часть индекса. Этот блок содержит указатели на последующие блоки Файла. е Если файл содержит еще большее количество блоков, то двенадцатый адрес узла укажет блок второго уровня косвенности.
Этот блок содержит список адр есов дополнительных блоков первого уровня косвенности. В свою очередь, каждый из них содержит указатели на файловые блоки. ° Если Файл содержит еще больше блоков, для которых не хватает косвенности второго уровня, то тринадцатый адрес в узле указывает на блок третьего уровня ро ня косвенности. Этот блок указывает на дополнительные косвенные блоки второго уровня, Таблица 12.5. Емкость |Л~ПХ-файла Количество блоков Количество байтов Уровень 10 10 Кбайт 256 256 Кбайт Прямой Один уровень косвенности Два уровня косвенности 256х256=-65К 65 Мбайт 256х65К=16М 16 Гбайт Три уровня косвенности 1.
Узел имеет фиксированный относительно небольшой размер и потому может длительное время содержаться в основной памяти. 2. Доступ к небольшим Файлам осуществляется с малым уровнем косвен-; ности (или и вовсе без него), что сокращает время обработки запроса доступа к диску. 3. Теоретический максимальный размер файла достаточно велик для удовле-''. творения практически всех приложений. Рас. 12.13. Схема адресации блоков в 11ЛЧХ Глава 12. управление файлами Часть 5. Операции ввода-вывода и файл Эта схема показана на рис. 12.13.
Общее количество блоков данных в Файле.: зависит от емкости блоков Фиксированного размера в системе. В УХ1Х Вузтега Ч. длина блоков равна 1 Кбайт, и каждый блок может содержать до 256 адресов' блоков. Следовательно, максимальный размер Файла в этой схеме превышает':. 16 Гбайт (табл. 12.5). Такая схема обладает рядом преимуществ.
12.В. еАйЛОвАЯ,СИСтжил.т1йватв'2бОО",:,'-'...ф е сетевые приложения больших корпоративных систем В этом разделе приведен обзор ХТГЯ. чевые возможности ХТГЯ ХТГЯ представляет собой гибкую и мощную файловую систему, которая, " мы увидим, построена на простой и элегантной модели. К наиболее достой-::: внимания особенностям ХТГБ относятся следующие. Способность восстановления данных. Первой в списке требований к новой: Файловой системе Ч"2К была способность восстановления данных при пол--', :$ ном отказе системы и сбоях дисков. В таких случаях ХТГБ способна рекон-;„. струировать дисковые тома и вернуть их к согласованному состоянию. Это'".'. достигается посредством использования модели обработки транзакций для:у операций обмена в Файловой системе; каждый значительный обмен рас-'' сматривается как атомарное действие, которое либо выполняется по и -.- л о-'-'.
стью, либо не выполняется вовсе. Кроме того, ХТГЯ использует избыточное,: хранение критических данных файловой системы. Безопасность. Для обеспечения безопасности ХТГЯ использует объектнум~", модель 'И2К. Открытый файл реализуется как файловый объект с дескрит~-;".' тором, определяющим атрибуты безопасности.
Диски и Файлы больших объемов. ХТГЯ поддерживает очень большие дис-. ки и файлы более эффективно по сравнению с другими файловыми систе-,': мами, включая ГАТ. Множественные потоки данных. Содержимое файла рассматривается какпоток байтов. В ХТГБ можно определить несколько потоков данных для од-„',", ного Файла. Примером использования этой особенности служит использова-". ние Ж2К удаленными системами Мас1п(озЬ для хранения и получения:.' Файлов.
В компьютерах Мас(п1озЬ каждый файл состоит из двух компонен- ъ тов: данных Файла и ветви ресурса, которая содержит информацию о файле. ХТГБ рассматривает эти компоненты как два потока данных. Е,лю Ж1пооюв 2000 ((Ч2К) поддерживает несколько Файловых систем, включая „'з АТ которая поддерживается Жшдожэ 95, МБ-ВОЯ и ОЯ/2. Однако разработчи- 1 3 :и '~2К спроектировали новую файловую систему, %'2К Г11е Яуз$ега (ХТГБ ), :ото ра я предназначена для удовлетворения высоких требований рабочих стан~ий и серверов. Примерами приложений такого уровня могут служить: клиент-серверные приложения, такие, как Файловые серверы, вычислительные серверы и серверы баз данных; е инженерные и научные приложения с интенсивным использованием ресурсов; ',-,'с, т е Обобщенная индексация.
ХТГБ связывает с каждым Файлом набор атрибу тов. Набор описаний Файлов в системе управления Файлами организован как реляционная база данных, поэтому Файлы могут быть индексированы по любому атрибуту. Том ХТГЯ и файловая структура ХТГЯ использует следующие концепции дискового хранения. е Сектор. Наименьшая единица физического хранения на диске. Размер дан ных в байтах является степенью двойки и почти всегда равен 512 байт. ° Кластер. Один или несколько последовательных секторов на одной дорож- ке. Размер кластера в секторах является степенью двойки.
° Том. Логический раздел диска, состоящий из некоторого количества кластеров и используемый файловой системой для распределения пространства. В любой момент времени том состоит из информации файловой системы, набора Файлов и нераспределенного пространства, оставшегося в томе, которое может быть выделено файлам. Том может занимать как весь диск, так и его часть или охватывать несколько дисков. При использовании ВА1Р 5 том состоит из полос, охватывающих несколько дисков. Максимальный размер тома ХТГБ составляет 2 байт. Кластер является фундаментальной единицей размещения в файловой системе ХТГЯ, которая не распознает секторы. Предположим, например, что размер каждого сектора составляет 512 байт и что система настроена так, что в одном кластере содержатся по два сектора (один кластер = 1 Кбайт). При создании пользователем файла размером 1600 байт файлу отводятся два кластера. Если впоследствии пользователь обновляет файл и он увеличивается до 3200 байт, то ему выделяются еще два кластера.
Кластеры, выделяемые файлу, не обязательно должны образовывать непрерывный блок; в ХТГЯ допускается Фрагментация файла на диске. В настоящее время максимальный размер файла, поддерживаемый ХТГЯ, составляет 2 ' кластеров, что эквивалентно максимум 2 байт. Использование кластеров при размещении файлов делает систему ХТГБ независимой от размеров физических секторов. Это позволяет системе ХТГБ без препятствий поддерживать нестандартные диски с размером сектора, не равным 512 байт, а также эффективно поддерживать диски очень большой емкости и файлы больших размеров посредством большего размера кластера.
Эффективность обеспечивается тем, что файловая система должна отслеживать каждый кластер, выделенный файлу; использование кластеров большего размера облегчает эту задачу. В табл. 12.6 приведены размеры по умолчанию кластеров системы ХТГБ. Эти размеры зависят от размера тома. Размер кластера, используемого в конкретном томе, устанавливается системой ХТГБ при форматировании. З данная Файловая система успешно применяяась в И'жИаие сГТ.
откуда и вере".: шяа в И'ЯК. — Прим. перев. 638 Часть б. Операции ввода-вывода и фи Глава 12. Управление Файлами 12,6. Разделы 5ТГБ и размеры кластеров Количество секторов в кластере Размер кластера 612 байт 1 Кбайт 612 Мбайт 512 Мбайт — 1 Гбайт 1 Гбайт — 2 Гбайт 2 Гбайт — 4 Гбайт 4 Гбайт — 8 Гбайт 8 Гбайт — 16 Гбайт 16 Гбвйт — 32 Гбайт 2 4 8 16 32 64 128 2 Кбайт 4 Кбайт 8 Кбайт 32 Кбайт 64 Кбайт > 32 Гбайт хема тома ИТГЯ 1чТГБ использует простой и в то же время мощный подход в организации гформации ка томе диска. Каждый элемент тома представляет собой Файл, и »ждый файл состоит из набора атрибутов (даже данные, хранящиеся в Файле, ссматриваются как атрибут).