Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LekOS.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.56 Mб
Скачать

Назначение и функции фс

Главной функцией обеспечиваемой СУФ является:

  1. Создание файла – определить имя и выделить место, которое ему необходимо;

  2. Уничтожение файла – освободить имя и занимаемое файлом пространство.

Удалить файл логически – имя исчезнет из каталога, но содержимое останется.

Удалить файл физически – полное удаление;

  1. Открытие файла – объявить системе о намерении использовать этот файл с определенными функциями и доступом;

  2. Закрытие открытого файла – запретить всякий последующий доступ к нему;

  3. Другие – разные функции проверки и модификации (чтение/запись i-той записи).

Эти функции являются базовыми операциями во всех СУФ. В ОС СУФ играет главную роль, потому что она должна управлять большей частью информации, принадлежащей как пользователям, так и самой ОС. Часто СУФ тесно связана с системой ввода/вывода.

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

Логическая организация файла

В общем случае данные в файле имеют некоторую логическую структуру. Эта структура является базой при разработке программы, предназначенной для обработки этого файла.

Чтобы текст мог быть правильно выведен на экран, программа должна иметь возможность выделять слова, строки,…

Поддержание структуры данных может быть целиком возложено на:

  1. Приложение (это реальная программа).

  2. Файловую систему.

1) В первом случае, когда все действия по интерпретации структуризации содержимого файла целиком относится к ведению приложения, и файл представляется ФС неструктурированной последовательностью данных.

Приложение формирует запросы к ФС на В/В, используя общие для всех приложений системные средства (например, указывает смещение относительно начала файла и кол-во байтов, которые необходимо считать/записать).

Подчеркнем, что интерпретация данных никак не связана с действительным хранением этих данных в ФС.

Модель файла, в соответствии с которой содержимое файла представляется в виде последовательности данных (поток байтов), стала популярна с ОС Unix, а теперь она широко используется в других ОС (MS-DOS, Windows NT/2000, NetWare).

В этом случае неструктурированная модель файла легко позволяет организовывать разделение файла между несколькими разными приложениями, потому что они могут по-разному структурировать и интерпретировать данные, содержащиеся в файле.

2) Другая модель, которая применяется в ОС: OS/360, DFC RSX, VMS, а в настоящее время используется редко – это структурированный файл.

В этом случае поддержание структуры файла поручается ФС. ФС видит файл как упорядоченную последовательность логических записей. Приложение может обращаться к ФС с запросом на В/В на уровне записей (например, считать запись №25 из файла FILE.DOC).

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

Развитием этого подхода стали СУБД. СУБД поддерживают не только сложную структуру данных, но и взаимосвязи между ними.

Логическая запись является наименьшим элементом данных, которой может оперировать программист при организации обмена с внешними устройствами.

ФС может использовать 2 способа доступа к логическим записям:

  1. Последовательный доступ.

  2. Прямой доступ (например, позиционировать файл на запись с указанным номером).

Файлы, доступ к записям которых осуществляется последовательно, по номерам позиций, называются неиндексированными, последовательными.

Индексированные файлы допускают более быстрый прямой доступ к отдельной логической записи. В индексированном файле записи имеют одно или более ключевых (индексированных) полей и могут адресоваться путем указания значения этих полей.

Рассмотрим механизм доступа более подробно.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]