Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Топ:
Установка замедленного коксования: Чем выше температура и ниже давление, тем место разрыва углеродной цепи всё больше смещается к её концу и значительно возрастает...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Интересное:
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Дисциплины:
2023-01-01 | 14 |
5.00
из
|
Заказать работу |
|
|
Последовательный (sequential) метод доступа является простейшим. Он основан на «ленточной» модели файла. Этот метод доступа является «естественным» для ряда приложений. Например, компиляторы и текстовые редакторы используют этот метод доступа.
С каждым файлом связывается указатель текущей позиции. Каждая операция доступа (чтение или запись) автоматически изменяет этот указатель в соответствии с объемом прочитанных или записанных данных. Дописывание может осуществляться в конец файла. В случае необходимости текущая позиция может быть установлена в начало файла (для ленточных устройств путем перемотки), некоторые системы позволяют пропускать несколько блоков без выполнения доступа как в прямом, так и в обратном направлении.
Последовательный метод доступа (см. рис. 13.1) основан на «ленточной» модели файла и применим как для устройств последовательного доступа, так и для устройств прямого доступа.
Рисунок 13.1 – Файл с последовательным доступом
Прямой метод доступа
При прямом (direct) методе файл представляет собой пронумерованный набор записей фиксированной длины, доступ к которым осуществляется в произвольном порядке. Этот метод базируется на «дисковой» модели доступа к данным. Прямой метод доступа к файлу аналогичен произвольному методу доступа к ячейке основной памяти.
Файлы с прямым доступом широко используются для непосредственного доступа к большим объемам информации. Зачастую прикладные системы баз данных основаны на этом методе доступа.
Для реализации прямого метода в операции доступа должен быть добавлен номер блока, к которому будет применяться эта операция.
Не все операционные системы поддерживают как последовательный, так и прямой методы доступа. Существуют системы, поддерживающие только один из этих методов. В некоторых системах требуется указывать метод доступа при создании файлов.
|
Последовательный метод доступа можно легко промоделировать с помощью прямого метода доступа. Пусть ср (current position) – переменная, хранящая значение указателя текущей позиции, тогда основные операции последовательного метода доступа моделируются прямым методом доступа следующим образом:
Последовательный метод | Прямой метод |
Перемотка reset | cp: = 0; |
Чтение read next | read cp; cp:= cp + 1; |
Запись write next | write cp; cp: =cp + 1; |
Другие методы доступа
Прямой метод доступа является основой для конструирования более сложных методов доступа. Эти методы включают построение индекса файла. Этот индекс, подобно разделу индекса в книге, содержит указатели на различные блоки. Чтобы найти запись в файле, сначала отыскивается необходимый индекс, а затем осуществляется доступ к необходимой записи по указателю, хранящемуся в индексе.
Пусть, например, некоторый файл хранит информацию некоторых продуктах и их ценах. Каждая запись содержит 10-разрядный универсальный код продукта и 6-разрядную цену. Таким образом, длина записи составляет 16 байтов. Если размер блока на диске равен 1024 байта, то в каждом блоке можно разместить 64 записи.
Пусть файл хранит сведения о 120000 товарах. Следовательно, он располагается примерно в 2000 блоках (2 миллиона байт). Если файл отсортирован по коду продукта, можно построить индекс, состоящий из значений кодов продукта в первой записи каждого блока. Такой индекс содержит 2000 записей по 10 байтов и может быть размещен в памяти. Чтобы найти цену конкретного продукта, нужно осуществить бинарный поиск в индексе, чтобы получить адрес блока, содержащего необходимую запись. Затем можно осуществить поиск записи в блоке.
В тех случаях, когда исходный файл очень велик, его индексный файл может быть также очень велик. В этом случае создают индексный файл второго уровня (индексный файл индексного файла).
|
Такой способ применен в индексно-последовательном методе доступа ISAM (Index Sequential Access Method), используемый в серии операционных систем для компьютеров фирмы IВМ (OS, VMS и др.).
Каталоги
Файловая система может быть очень велика. Некоторые системы содержат тысячи файлов, размещающихся на сотнях гигабайт дискового пространства. Для управления множеством файлов требуется их каким-либо образом упорядочить. Обычно такое упорядочение файлов осуществляется двумя способами:
Файловая система разбивается на части, называемые томами (volumes) или минидисками (minidisks). Обычно каждый диск содержит один или несколько томов. Некоторые операционные системы позволяют одному тому располагаться на нескольких дисках.
Каждый том содержит информацию о хранящихся на нем файлах. Эта информация сгруппирована в таблицу, которая называется таблицей содержания тома (volume table of contents), каталогом или директорией тома или просто директорией (device directory или directory).
Каталог содержит атрибуты всех файлов, например имя, расположение, размер; права доступа, тип и т. д.
Каталог может рассматриваться как таблица, преобразующая имя файла в соответствующую точку входа. С этой точки зрения становится ясно, что каталоги могут быть организованы многими способами. Должна быть предусмотрена возможность добавлять строки в таблицу, удалять строки и находить нужную строку.
Типичный набор операций с директорией включает следующие:
Поиск файла (Sear с hing for a file). Всегда должна иметься возможность отыскать нужный файл. Поскольку файлы обычно имеют символические имена, и некоторые имена означают связи между файлами, может потребоваться найти все файлы, имена которых соответствуют определенному шаблону.
Создание файла (Creating a file). Необходимо иметь возможность создавать новые файлы и добавлять их в каталоги.
Чтение содержимого каталога (List a directory). Необходимо иметь возможность получить список файлов каталога, а также содержимое записи о каждом файле.
Удаление файла (Deleting a file). Если файл больше не потребуется, то его желательно удалить из каталога. Освобожденная память может быть впоследствии использована для размещения других файлов.
Переименование файла (Renam ing a file). Поскольку имена файлов говорят их хозяевам о содержимом файлов, то они должны быть измененяемыми. Переименование файла может сопровождаться изменением местоположения записи о файле в каталоге.
|
Копирование файловой системы (Traverse the file system). Может понадобиться получить доступ к каталогам и файлам в пределах структуры каталогов. Это удобно для сохранения структуры и содержимого файловой системы с регулярными интервалами. Такой подход применяется при восстановлении системы после ее краха.|поперечина|
|
|
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!