Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС_модуль2.doc
Скачиваний:
16
Добавлен:
25.08.2019
Размер:
258.05 Кб
Скачать

Типы файлов

Обычно ФС поддерживают несколько различных типов файлов:

  1. Обычные файлы.

  2. Каталоги.

  3. Специальные файлы.

  4. Конвейеры.

  5. Отображаемые в память файлы и др.

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

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

Это следующая информация.

  • Тип файла.

  • Расположение его на диске.

  • Права доступа к файлу.

  • Дата его создания и модификации.

Во всех остальных случаях каталоги рассматриваются ФС как обычные файлы.

Специальные файлы

Понятие специального файла появилось в операционной системе UNIX.

Специальные файлы (виртуальные) - это унифицированное представление устройств I/O.

Они всегда связаны с некоторым устройством I/O и представляют его для остальной части ОС и прикладных процессов в виде набора байт.

Хранятся они, как и все остальные файлы во всех видах памяти.

Со специальным файлом можно работать так же, как и с обычным, то есть:

  1. Создавать,

  2. открывать,

  3. считывать из него определенное количество байт,

  4. записывать в него определенное количество байт,

  5. закрывать после завершения операции.

Иерархия файловой системы

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

Граф, описывающий иерархию каталогов, может быть деревом или сетью.

Типы иерархии:

  1. Дерево, если файлу разрешено входить только в один каталог.

  2. Сеть — если файл может входить сразу в несколько каталогов.

Например, в MS-DOS и Windows каталоги образуют древовидную структуру, а в UNIX — сетевую.

Каталог самого верхнего уровня называется корневым каталогом, или корнем (root).

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

Имена файлов

Все типы файлов имеют символьные имена. В иерархических ФС обычно используются три типа имен файлов:

  1. простые,

  2. составные,

  3. относительные.

Простое, или короткое, идентифицирует файл в пределах одного каталога, и ограничиваются ОС на номенклатуру символов и на длину имени.

До сравнительно недавнего времени эти границы были весьма узкими. Так, в популярной файловой системе FAT длина имен ограничивались схемой 8.3 (8 символов — собственно имя, 3 символа — расширение имени), а в файловой системе s5, поддерживаемой многими версиями ОС UNIX, простое символьное имя не может содержать более 14 символов, зато символы могут быть хоть «перевод каретки». В Linux имя ограничивается длиной блока на диске. А в файловых системах NTFS и FAT32, входящих в состав операционной системы Windows NT, имя файла может содержать до 255 символов.

Разным файлам разрешено иметь одинаковые простые имена только в разных каталогах.

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

В древовидной ФС у одного файла одно полное имя.

В сетевых ФС у одного файла много полных имен.

В обоих случаях файл однозначно идентифицируется полным именем.

Относительное имя файла определяется через понятие «текущий каталог». Для каждого пользователя в каждый момент времени один из каталогов ФС является текущим.

Относительное имя = полное имя - имя текущего каталога.

В некоторых операционных системах разрешено присваивать одному и тому же файлу несколько простых имен, которые можно интерпретировать как псевдонимы.

ОС проще работать с файлом, если между файлом и именем имеется взаимно однозначное соответствие.

Уникальное имя. Это числовой идентификатор, предназначенный только для ОС.

Уникальное имя существует наряду с одним или несколькими символьными именами, присваиваемыми файлу пользователями или приложениями. Примером такого уникального имени файла является номер индексного дескриптора в системе UNIX.