24530

Физическая организация файловой системы. Структура жесткого диска

Доклад

Информатика, кибернетика и программирование

Логическая организация файла. Пользователи дают файлам символьные имена при этом учитываются ограничения ОС на используемые символы и на длину имени. Например в файловой системе NTFS имя файла может содержать до 255 символов не считая завершающего нулевого символа. Чтобы приложения могли обращаться к файлам в соответствии с принятыми ранее соглашениями файловая система должна уметь предоставлять эквивалентные короткие имена псевдонимы файлам имеющим длинные имена.

Русский

2013-08-09

108.27 KB

3 чел.

Вопрос 35. Что такое файловая система? Имена и типы файлов. Древовидная и сетевая иерархия каталогов.           Логическая организация файла.

§7.1 Логическая организация файловой системы.

Имена файлов.

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

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

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

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

§7.1.2.Типы файлов.

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

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

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

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

В разных файловых системах могут использоваться различные признаки, например: информация о разрешенном доступе, признак "только для чтения", признак "скрытый файл", признак "системный файл", признак "архивный файл", признак "временный" (удалить после завершения процесса) и др.

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

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

Рис. 7.1. Структура каталогов: а – структура записи каталога

MS-DOS (32 байта); б – структура записи каталога ОС UNIX

              Рис. 7.2. Иерархические структуры файловой системы:

а – одноуровневая; б – иерархическая (дерево); в – иерархическая (сеть)

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

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

На рис. 7.3 показаны несколько схем логической организации файла. Записи могут быть фиксированной длины или переменной длины. Записи могут быть расположены в файле последовательно (последовательная организация) или в более сложном порядке, с использованием так называемых индексных таблиц, позволяющих обеспечить быстрый доступ к отдельной логической записи (индексно-последовательная организация). Для идентификации записи может быть использовано специальное поле записи, называемое ключом. В файловых системах ОС UNIX и MS-DOS файл имеет простейшую логическую структуру – последовательность однобайтовых записей.

Рис. 7.3. Способы логической организации файлов

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

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

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

Другая модель файла – структурированный файл в настоящее время используется редко (применялась в старых ОС OS/360, DEC RSX и VMS). В этом случае поддержание структуры файла поручается файловой системе. Файловая система видит файл как упорядоченную последовательность логических записей. Приложение может обращаться к файловой структуре с запросами на ввод-вывод на уровне записей, например «считать запись 25 из файла FILE.DOC». Файловая структура предоставляет приложению доступ к записи, а вся дальнейшая обработка данных, содержащихся в этой записи, выполняется приложением. Развитием этого подхода стали системы управления базами данных (СУБД).


 

А также другие работы, которые могут Вас заинтересовать

66861. Экономика пожарной безопасности 51.89 KB
  Особенностями пожаров на металлургических предприятиях являются: быстрое распространение огня в маслопроводах кабельных туннелях и этажах транспортерных галереях на покрытиях большой площади и в системах гидравлики высокого давления...
66863. Створення додатку для роботи з базою даних 616.5 KB
  Створення бази даних База даних буда створена у СУБД MS SQL Server 2000 згідно до обраної предметної області пункт прийому сировини шляхом генерації з фізичної моделі побудованої за допомогою Erwin згідно методичних вказівок. Отриманий результат має вигляд...
66865. GREAT BRITAIN AND THE UNITED KINGDOM. THE SYSTEM OF GOVERNMENT IN THE UK 80.5 KB
  The British Isles today are shared by two separate and independent states. The smaller of these is the Republic of Ireland, with its capital in Dublin. The larger, with London as its capital, is the United Kingdom of Great Britain and Northern Ireland.