Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Экзамен Павлов.docx
Скачиваний:
63
Добавлен:
17.08.2022
Размер:
786.12 Кб
Скачать
  1. Структура файловой системы, реализация файлов, каталогов.

Данные на носителях хранятся в виде файлов. Файл - это именованная часть диска.

Для управления файлами предназначены системы управления файлами.

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

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

В широком смысле под файловой системой понимают:

- совокупность всех файлов на диске

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

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

Общую структуру файловой системы можно представить многоуровневой моделью

Рис. 1 Общая структура файловой системы

На символьном уровне по символьному имени файла определяется его уникальное имя. В некоторых ОС, например, MS-DOS, символьное имя уже является уникальным и символьный уровень отсутствует.

На базовом уровне по уникальному имени файла определяются его характеристики: права доступа, размер, адрес и другие.

Далее проверяются права доступа к данному файлу. Если доступ разрешен, то выполнение запроса продолжается, если запрещен, то пользователю выдается ошибка о отсутствии прав доступа.

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

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

Требования пользователей к хранению информации в виде файлов:

-Возможность хранить большие объемы данных

- сохранение информации после завершения работы процесса

- несколько процессов должны иметь доступ к информации

Возможная длина имени файла зависит от ОС: от 8 на MS-DOS до 255 (Windows, UNIX) символов

ОС могут различать прописные и строчные символы. Например, WINDOWS и windows для MS-DOS одно и тоже, но для UNIX это разные файлы.

Во многих ОС имя файла состоит из двух частей, разделенных точкой, например, windows.exe. Часть после точки называют расширением файла. По нему система различает тип файла.

У MS-DOS расширение составляет 3 символа. По нему система различает тип файла, а также можно его исполнять или нет.

У UNIX расширение ограничено размером имени файла в 255 символов, также у UNIX может быть несколько расширений, но расширениями пользуются больше прикладные программы, а не ОС. По расширению UNIX не может определить исполняемый это файл или нет.

Три основные структуры файлов:

- Последовательность байтов - ОС не интересуется содержимым файла, она видит только байты. Основное преимущество такой системы, это гибкость использования. Используются в Windows и UNIX.

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

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

Основные типы файлов:

- Регулярные - содержат информацию пользователя. Используются в Windows и UNIX.

- Каталоги - системные файлы, обеспечивающие поддержку структуры файловой системы. Используются в Windows и UNIX.

- Символьные - для моделирования ввода-вывода. Используются только в UNIX.

- Блочные - для моделирования дисков. Используются только в UNIX.

Основные типы регулярных файлов:

-ASCII файлы - состоят из текстовых строк. Каждая строка завершается возвратом каретки (Windows), символом перевода строки (UNIX) и используются оба варианта (MS-DOS).

Основные виды доступа к файлам:

- Последовательный - байты читаются по порядку. Использовались, когда были магнитные ленты.

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

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

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

В одноуровневной системе все файлы хранятся в одном каталоге.

Рис. 4 Система с одним каталогом

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

В двухуровневой системе кроме корневого каталога создается каталог под каждого пользователя

Рис. 5 Система с двумя каталогами

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

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

Рис. 6 Иерархическая строение каталогов

Современные ОС построены именно на иерархической системе каталогов.