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». Файловая структура предоставляет приложению доступ к записи, а вся дальнейшая обработка данных, содержащихся в этой записи, выполняется приложением. Развитием этого подхода стали системы управления базами данных (СУБД).


 

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

17026. Аналітичні обчислення в системі MathCad 3.67 MB
  Лабораторна робота №4 Тема: Аналітичні обчислення. Мета. Ознайомитися з аналітичним обчисленням у середовищі MathCad використовуючи панель Символіка. Обладнання: ПК ПЗ MathCad. Хід роботи Завдання 1 Виконати всі можливі перетворення виразу використовуючи панель
17027. Аналітичні обчислення 48 KB
  Лабораторна робота №5 Тема: Аналітичні обчислення. Мета: ознайомитися з аналітичним обчисленням у середовищі MathCad. Обладнання: ПК ПЗ MathCad Хід роботи: Індивідуальне завдання: Використовуючи панель Калькулус для даної функції знайти: а рівняння доти...
17028. Побудова графіків в MathCad 62 KB
  Лабораторна робота № 6 Тема: Побудова графіків в MathCad Мета: Відробити прийоми побудови графіків у середовищі MathCad Обладнання: ПК ПЗ MathCad. Ход работы 1. Побудувати графіки функційтаблиця 1 у спільній системі координат а функцію з таблиці 2 що задана параметричноокр...
17029. Рішення диференціальних рівнянь в MathCad 61 KB
  Лабораторна робота № 7 Тема: Рішення диференціальних рівнянь. Мета: Відробити прийоми рішення звичайних диференціальних рівнянь використовуючи інструменти MathCad. Обладнання: ПК ПЗ MathCad. Вирішити задачу Коші використовуючи блок Given/Оd...
17030. Розв’язання задач математичної статистики в системі MathCad 37 KB
  Лабораторна робота № 8 Тема: розвязання задач математичної статистики в системі MathCad. Мета: ознайомитися з можливостями системи MathCad для розвязання задач математичної статистики: з убудованими функціями для знаходження параметрів регресії. Індивідуальне за
17031. Створення елементів керування на екранній формі в Visual BASIC 1.93 MB
  Лабораторна робота №9 Тема. Створення елементів керування на екранній формі в Visual BASIC. Мета: відробити прийоми створення елементів керування на екранній формі та встановлення їх властивостей в Visual BASIC 6.0 . Обладнання: ПК ПЗ Visual BASIC 6.0 Хід роботи Індивідуальне за
17032. Використання операторів умов в Visual BASIC 41.5 KB
  Лабораторна робота №10 Тема: Використання операторів умов Мета: відробити прийоми використання оператори умов в Visual BASIC 6.0 . Обладнання: ПК ПЗ VB 6.0 Хід роботи Індивідуальне завдання. Знайти значення функції використавши вікно повідомлень для вводу та виводу ...
17033. Програмування циклів з лічильником в Visual BASIC 33 KB
  Лабораторна робота № 11 Тема: Програмування циклів з лічильником Мета: відробити прийоми використання циклів з лічильником в Visual BASIC 6.0 . Обладнання: ПК ПЗ VB 6.0 Хід роботи Індивідуальне завдання. Обчислити суму або добуток використовуючи ввід та вивід даних чер
17034. Умовні оператори циклу і переклад в інших системах числення в Visual BASIC 45.5 KB
  Лабораторна робота №12 Тема. Умовні оператори циклу і переклад в інших системах числення Мета: відробити прийоми використання умовних циклів і розглянути переклад у системи числення за допомогою VB 6.0. Обладнання: ПК ПЗ VB 6.0. Хід роботи Індивідуальне завдання. ...