Структура файла

Файлы могут быть структурированы несколькими различными способами. Три наиболее вероятные структуры показаны на рис. 4.1. Файл на рис. 4.1, а представляет собой бессистемную последовательность байтов. В сущности, операционной системе все равно, что содержится в этом файле, — она видит только байты.
Какое-либо значение этим байтам придают программы на уровне пользователя. Такой подход используется как в UNIX, так и в Windows.

а 6 в

Рис. 4.1. Три типа файлов: а — последовательность байтов; б — последовательность записей;

в — дерево

Когда операционная система считает, что файлы — это не более чем последовательность байтов, она предоставляет максимум гибкости. Программы пользователя могут помещать в свои файлы все, что им заблагорассудится, и называть их, как им удобно. Операционная система ничем при этом не помогает, но и ничем не мешает. Последнее обстоятельство может иметь особое значение для тех пользователей, которые хотят сделать что-либо необычное. Эта файловая модель используется всеми версиями UNIX (включая Linux и OS X) и Windows.

Первый шаг навстречу некой структуре показан на рис. 4.1, б. В данной модели файл представляет собой последовательность записей фиксированной длины, каждая из которых имеет собственную внутреннюю структуру. Основная идея файла как последовательности записей состоит в том, что операция чтения возвращает одну из записей, а операция записи перезаписывает или дополняет одну из записей. В каче
стве исторического отступления заметим, что несколько десятилетий назад, когда в компьютерном мире властвовали перфокарты на 80 столбцов, многие операционные системы универсальных машин в основе своей файловой системы использовали файлы, состоящие из 80-символьных записей, — в сущности, образы перфокарт.

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

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

Здесь основной операцией является не получение «следующей» записи, хотя возможно проведение и этой операции, а получение записи с указанным ключом. Для файла зоопарк (см. рис. 4.1, в) можно, к примеру, запросить систему выдать запись с ключом пони, нисколько не заботясь о ее конкретной позиции в файле. Более того, к файлу могут быть добавлены новые записи, и решение о том, куда их поместить, будет принимать не пользователь, а операционная система. Совершенно ясно, что этот тип файла отличается от бессистемных битовых потоков, используемых в UNIX и Windows, и он используется в некоторых больших универсальных компьютерах, применяемых при обработке коммерческих данных.

4.1.3.

<< | >>
Источник: Э. ТАНЕНБАУМ Х. БОС. СОВРЕМЕННЫЕ ОПЕРАЦИОННЫЕ СИСТЕМ Ы 4-е ИЗДАНИЕ. 2015

Еще по теме Структура файла:

  1. СТРУКТУРА
  2. Структура
  3. § 3. О структуре сознания
  4. § 2. Структура парламентов
  5. Функциональные структуры.
  6. Свободные структуры
  7. Структура преступной группы
  8. § 2. Психологическая структура личности
  9. ИНТЕЛЛЕКТ: СТРУКТУРА
  10. Линейно-функциональные структуры.
  11. Типы социальных структур
  12. Линейные структуры.
  13. IV. 2. 2. Кольцевые структуры.
  14. Структура юридической социологии.
  15. СТРУКТУРА ЗАМЕТКИ
  16. Глава 3 ВНУТРЕННЯЯ СТРУКТУРА ОРГАНИЗАЦИИ
  17. § 3.3. Определение социальной структуры организации
  18. § 3.4. Параметры социальной структуры организации
  19. ЛЕКЦИЯ 11 2.2.3. Структура городского пространства