Читайте также:
|
|
С точки зрения пользователя наиболее важным аспектом файловой системы является ее внешнее представление, т.е. именование, использование, защита файлов, операции с файлами и т.д.
Файлы
Файл – это законченный битовый массив, расположенный в определенных ячейках памяти на жестком диске и имеющий имя. Из определения файла вытекает следующее родственное определение – файловая система.
Файловая система – это система распределения файлов на диске и управления ими. Пользователь может обратиться к файлу по его имени, а файловая система по его адресу. Пользователь рассматривает адрес как последовательность имен каталогов ведущую к необходимому файлу. Файловая система – как совокупность координат всех ячеек памяти, в которых располагается поименованная информация.
Файл существует в том случае, когда на него есть ссылка (адрес) из какого либо каталога.
Файлы относятся к абстрактному механизму. Они представляют способ сохранять информацию на диске и считывать ее снова позднее. При этом от пользователя должны скрываться такие детали, как способ и место хранения информации, а также детали работы дисков.
Файлы имеют максимальную длину имени 8 символов (для ОС MS-DOS) или 255 символов (для ОС Windows). Часто в именах файлов разрешается использование цифр и специальных символов. Прописные и строчные буквы в имени файла различаются в системах UNIX, а в MS-DOS, Windows 95 и Windows 98 – нет. Файловые системы Windows NT, Windows 2000 и Windows XP поддерживают чувствительность к регистру, но WIN 32 API, к сожалению нет. Во многих операционных системах имя файла может состоять из двух частей: имени и расширения, разделенных точкой. Расширение обычно означает тип файла. Количество символов в расширении и его наличие вообще зависит от операционной системы. У каждого файла помимо имени и данных есть дополнительная информация, которая называется атрибутом файла.
Рассмотрим наиболее часто встречающие системные вызовы, относящиеся к файлам.
1 Create (создание) – позволяет создать файл без данных, но с некоторыми атрибутами.
2 Delete (удаление) – позволяет удалить ненужный файл.
3 Open (открытие) – позволяет системе прочитать в оперативную память атрибуты файла, тем самым открывая его.
4 Close (закрытие) – позволяет закрыть файл, для освобождения пространства в памяти.
5 Read (чтение) – позволяет считывать данные из открытого файла.
6 Write (запись) – позволяет записывать данные в текущую позицию. Если текущая позиция находиться в конце файла, размер файла автоматически увеличивается. В противном случае запись производится поверх существующих данных, которые теряются навсегда.
7 Append (добавление) – позволяет только добавлять данные к концу файла. В операционных системах с минимальным набором системных вызовов может не быть данного системного вызова.
8 Seek (поиск) – необходим для работы с файлами произвольного доступа.
9 Get attributes (получение атрибутов) – предоставляет атрибуты файла необходимые процессам для выполнения их работы.
10 Set attributes (установка атрибутов) – позволяет пользователям устанавливать некоторые атрибуты.
11 Rename (переименование) – позволяет изменить имя файла.
Файлы могут быть структурированы несколькими различными способами. Три типа структур показаны на рисунке 3.5.
Рисунок 3.5 – Три типа файлов: последовательность байтов (а);
последовательность записей (б); дерево (в)
1 Неструктурированная последовательность байтов (рисунок 3.5 а). В таком типе файлов ОС не интересуется его содержимым и не вмешивается в процесс создания файла. Все что она видит – это байты, что обеспечивает максимальную гибкость. Пользователи могут помещать в файлы все что угодно и именовать любым удобным способом.
2 Последовательность записей фиксированной длины, каждая со своей внутренней структурой (рисунок 3.5 б). Для файлов, состоящих из записей, важным является то, что операция чтения возвращает одну запись, а операция записи перезаписывает или дополняет одну запись. Такой метод использовался раньше только на мэйнфреймах.
3 Файл представляет собой дерево записей ( рисунок 3.5 в ). Каждая запись в фиксированной позиции содержит поле ключа. Дерево сортировано по ключевому полю, что обеспечивает быстрый поиск заданного ключа. Такой тип файлов также применяется на мэйнфреймах.
В старых операционных системах предоставлялся только один тип доступа к файлам – последовательный доступ, т.е. процесс может читать байты файла только по порядку от начала к концу. Такой вид доступа использовался на компьютерах, оснащенных магнитными лентами. С появлением дисков стало возможным читать байты или записи файла в произвольном порядке. Файлы, байты которых могут быть прочитаны в произвольном порядке, называются файлами произвольного доступа. В настоящее время все файлы операционных систем автоматически являются файлами произвольного доступа.
Дата добавления: 2014-12-20; просмотров: 101 | Поможем написать вашу работу | Нарушение авторских прав |