10.6. Библиотечный файл
Файл
с библиотечной
организацией
состоит из последовательно организованных
разделов, каждый из которых имеет свое
имя и содержит одну или несколько
логических записей. В начале файла
размещается специальный служебный
раздел, называемый справочником или
оглавлением
файла.
Оглавление состоит из элементов,
относящихся к отдельным разделам.
Каждый элемент содержит имя раздела и
его адрес (адрес первой записи раздела).
К
каждому разделу библиотечного файла
осуществляется прямой доступ через
оглавление. Записи разделов просматриваются
последовательно в порядке их
физического размещения на носителе.
Характерным
примером использования файла с
библиотечной организацией является
библиотека программ. В этом случае
каждый раздел представляет собой
отдельную программу или подпрограмму,
вызов которых осуществляется по имени
раздела. Обслуживание библиотек, т.е.
помещение в них новых программ, удаление
ранее записанных, переименование
программ, их копирование и т.п.,
производится специальным комплексом
системных программ под общим названием
"Библиотекарь".
Произвольная
обработка библиотечного файла заключается
в прямом обращении к требуемому
разделу и в обработке отдельных разделов
файла в произвольной последовательности.
При
последовательной обработке последовательно
читаются и обрабатываются записи,
относящиеся к одному разделу. Такая
обработка в ряде задач является
эффективной из-за простоты и удобства
написания прикладных программ.
Корректировка
библиотечного файла заключается в
добавлении и удалении разделов. Новые
разделы размещаются в конце файла на
свободном участке памяти, и сведения
о них заносятся в оглавление. При
удалении раздела удаляется соответствующий
элемент оглавления, так что доступ к
записям раздела становится невозможным.
Однако участок памяти, занимаемый
удаленным разделом, не может быть
использован до тех пор, пока не будет
выполнено уплотнение файла, в процессе
которого все разделы файла сдвигаются
(перезаписываются), а оглавление
корректируется. При этом исключаются
неиспользуемые участки между разделами
и увеличивается свободный участок в
конце области памяти, выделенной для
файла. На этом участке размещаются
вновь создаваемые разделы.
4