Скачать книгу

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

      В файловой системе FAT длина имен ограничивается известной схемой 8.3 (8 символов – собственно имя, 3 символа – расширение имени), а в ОС UNIX System V имя не может содержать более 14 символов. Поскольку пользователю гораздо удобнее работать с длинными именами, имеющими достаточную информативность, современные файловые системы поддерживают длинные символьные имена файлов (NTFS Windows NT и ext2 Linux устанавливают допустимую длину имени файла в 255 символов, не считая завершающего нулевого символа).

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

      Длинные имена поддерживаются не только новыми файловыми системами, но и новыми версиями хорошо известных файловых систем. Например, в ОС Windows 95 используется файловая система VFAT, представляющая собой существенно измененный вариант FAT. Кроме проблемы генерации эквивалентных коротких имен, при реализации нового варианта FAT важно было реализовать хранение длинных имен так, чтобы метод хранения и структура данных на диске принципиально не изменились.

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

      Типы файлов

      Файлы бывают разных типов: обычные файлы, специальные файлы, файлы-каталоги.

      Обычные файлы, в свою очередь, подразделяются на текстовые и двоичные. Текстовые файлы состоят из строк символов, представленных в ASCII-коде. Это могут быть документы, исходные тексты программ и т. п. Текстовые файлы можно прочитать на экране и распечатать на принтере. Двоичные файлы не используют ASСII-коды, они часто имеют сложную внутреннюю структуру, например, объектный код программы или архивный файл. Все ОС должны уметь распознавать хотя бы один тип файлов – их собственные исполняемые файлы.

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

Скачать книгу