ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 04.02.2024
Просмотров: 182
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
128 щиты файлов от несанкционированного доступа, аналогично другим объектам операционной системы, используется избирательный или мандатный механизм безопасности.
Внешние устройства хранения имеют следующий простой ин- терфейс доступа к данным: по указанному адресу можно записать или считать блок данных фиксированного размера (в несколько ки- лобайт). Например, для доступа к блоку на диске требуется указать его физическое положение на поверхности носителя (номер поверх- ности, номер цилиндра (дорожки), номер сектора). Поэтому файло- вая система должна организовывать некоторый произвольный до- ступ, обеспечивая отличные от блочной модели способы работы с данными. Это логическая организация файлов. Также требуется поддерживать некоторую организацию физических блоков внутри файлов. Это физическая организация файлов.
Логическая организация файлов. Приведем некоторые рас- пространенные модели файлов.
Последовательность байт. Это типовая модель доступа, ис- пользуется как произвольный, так и последовательный доступ к хранимым данным.
Последовательность блоков переменной длины. Эта модель позволяет по логическому номеру блока адресовать его содержимое.
В некоторых файловых системах используется гибридная модель, когда в файле содержится несколько независимых последовательно- стей байт (потоков данных). Это может оказаться удобным, напри- мер, для хранения видео, звука и субтитров в отдельных потоках средствами файловой системы (рис.13.2).
Рис. 13.2. Последовательность блоков переменной длины
Упорядоченная или неупорядоченная последовательность
ключей. По ключу адресуется ассоциированный с ним блок данных
(рис.13.3). Если последовательность ключей упорядочена, то имеет-
1 2
3 номер блока
129 ся возможность выбрать следующий блок по порядку относительно текущего блока. Данная логическая организация удобна для управ- ления и организации доступа к файлами очень больших размеров.
Рис. 13.3. Последовательность ключей
Физическая организация файлов. Рассмотрим некоторые распространенные приемы физической организации файлов.
Последовательность блоков (непрерывное размещение). Бло- ки, принадлежащие файлу, следуют по порядку их физических адре- сов. В каталоге указывается адрес первого блока, количество блоков или последний блок. Достоинство этого способа – простота, а ос- новная проблема – фрагментация блоков. Этот способ, например, находит применение в файловых системах длительного хранения, в частности ленточных запоминающих устройствах.
Связанный список блоков. Простейший способ преодолеть фрагментацию (рис.13.4).
Рис. 13.4. Связанный список блоков
Проблемой является большое время доступа к информации в конце файла. Все блоки нужно последовательно перебрать. Инфор- мация о следующем блоке является частью блока, на это уходит не- которое количество памяти.
Ключ Данные
130
Связанный список индексов. Используемый на практике спо- соб организации файловых систем относительно небольшого разме- ра (рис.13.5). Он основан на применении таблицы размещения файла
(File Allocation Table, FAT). Файловые системы, использующие этот способ: FAT12, FAT16, FAT32, VFAT. Метод предложен Microsoft.
Рис. 13.5. Связанный список индексов
Идея заключается в переносе информации о следующем блоке в отдельную таблицу в начальных блоках физического носителя.
Индекс блока в таблице и его физическое положение на диске связа- ны линейным преобразованием. Блоки таблицы индексов считыва- ются в оперативную память. Благодаря этому можно быстро пере- брать цепочку индексов блоков файла в памяти и запросить нужный блок на диске. Поэтому эффективность произвольного доступа ока- зывается высокой. Преимуществом также является целостность файловой системы, поддерживаемая несколькими копиями таблицы индексов и хранением информации о состоянии каждого физическо- го блока в таблице индексов. Недостатком является рост размера требуемой служебной информации при увеличении размеров файло- вой системы (фактически предел 8 тебибайт при 2 Кб кластерах).
Непосредственное перечисление блоков и способы, использу- ющие сбалансированные деревья (рис.13.6).
Это наиболее распространенная группа способов физической организации файлов. Часть физических блоков в произвольной об- ласти дискового пространства отводится под ссылочные структуры для доступа к блокам с данными. Например, на рисунке показана структура таких блоков. В корневом блоке, адрес которого записы- таблица индексов
Положение в таблице (индекс блока) однозначно определяет смещение блока на физическом носителе.
131 вается в каталоге, хранится 13 полей, содержащих адреса других блоков. Первые 10 полей непосредственно адресуют блоки файла.
Если их недостаточно, то используется следующее поле, адресую- щее блок, в котором может быть записано 256 адресов следующих блоков файла. Если размер файла превышает 266 блоков, то исполь- зуется двенадцатая запись корневого блока, с использованием кото- рой физические блоки адресуются уже с двойным уровнем косвен- ности и так далее. Общее количество физических блоков в файле, таким образом, может достигать 16.843.018.
Рис. 13.6. Непосредственное перечисление блоков
В настоящее время разработано большое количество файло- вых систем различного назначения и устройства. Помимо логиче- ской и физической организации при рассмотрении архитектур фай- ловых систем обсуждаются методы обеспечения надежности
(например, журналирование), повышения скорости доступа (экстен- ты), хранения больших объемов данных (распределенные парал- лельные файловые системы), защиты данных (шифрованные файло- вые системы) и другие.
256 256x256x256 256x256 256 256 10 13 1
1 1
132
Экзаменационные вопросы по разделу V
1. Архитектура программного обеспечения ввода-вывода. Средства программного взаимодействия с внешними устройствами. Архи- тектура программного стека, функции слоев.
2. Общие принципы организации файловых систем и файлов.
Идентификация файлов в файловых системах, логическая и фи- зическая организация файлов.
133
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Бэкон, Дж. Операционные системы: параллельные и распредели- тельные системы / пер. с англ. СПб.: Питер, 2004.
2. Гордеев, А.В. Операционные системы: учеб. для вузов. Изд. 2-е.
СПб.: Питер, 2005.
3. Дейтел Х., Дейтел П., Чофнес Д. Операционные системы: 2 т.
Т. 1. Основы и принципы / пер. с англ. М.: Бином-Пресс, 2007.
4. Дейтел Х., Дейтел П., Чофнес. Д. Операционные системы: 2 т.
Т. 2. Распределенные системы, сети, безопасность / пер. с англ.
М.: Бином-Пресс, 2007.
5. Олифер В.Г., Олифер Н.А. Сетевые операционные системы: учеб. для вузов. СПб.: Питер, 2007.
6. Столлингс, В. Операционные системы: внутреннее устройство и принципы проектирования / пер. с англ. М. [и др.]: Вильямс,
2004.
7. Таненбаум Э., Вудхал А. Операционные системы. Разработка и реализация / пер. с англ. СПб.; М.; Нижний Новгород, Питер,
2007.
8. Таненбаум Э., Бос. Х. Современные операционные системы.
Изд. 4-е. – СПб.: Питер, 2015.