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

Упорядочение файлов, хранящихся в дисковой памяти, называется логической организацией файловой системы. Основой логической организации являются каталоги. Каталогом называется специальный файл, в котором регистрируются другие файлы. Наряду с термином «каталог» в сообщениях DOS и ее документации для идентификации этого файла используются также термины «раздел», «директория». В каталоге содержится вся информация, характеризующая входящие в него файлы, и сведения о том, в каком месте диска файл расположен. В частности, в каталоге поддерживаются следующие параметры файла: имя, расширение, атрибуты, размер в байтах, дата и время создания или последнего обновления, номер начального кластера размещения файла. Сам же файл хранится как последовательность байтов без каких-либо дополнительных справочных сведений.

Каталог, в свою очередь, может входить в другой каталог — быть его подкаталогом. Каталог верхнего уровня, который не является подкаталогом, называется корневым каталогом (Root Directory). Место для корневого каталога резервируется при форматировании (разметке) диска и имеет стандартный размер — 3584 байта (то есть вмещает не более 112 записей по 32 байта, а, если больше, то их предварительно надо объединить в подкаталоги). Корневой каталог не может быть удален средствами операционной системы.

Каждый элемент (файл или подкаталог) корневого каталога имеет размер 32 байта и включает 8 полей, для файлов это:

q имя файла — 8 байтов;

q расширение имени файла — 3 байта;

q атрибут файла — 1 байт;

q резерв — 10 байтов;

q время создания или последней модификации файла (час, минута, секунда) — 8 байтов;

q дата создания или последней модификации файла (год, месяц, день) — 2 байта;

q номер кластера, с которого начинается файл на диске — 2 байта (в FAT16);

q фактическая длина файла в байтах — 4 байта.

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

Каждый диск хранит свою файловую структуру, которая формируется по следующим правилам:

q файл или каталог может входить с одним и тем же именем в один и тот же каталог только один раз;

q допускается вхождение в различные каталоги файлов и каталогов с одинаковыми именами;

q на порядок следования файлов и подкаталогов в каталоге никаких ограничений не накладывается;

q глубина вложенности каталогов не ограничивается.

Файловая система обеспечивает формирование иерархической многоуровневой файловой структуры, в корне которой находится корневой каталог, а узлами и листьями являются каталоги и файлы. Рассмотрим пример дерева каталогов (рис. 10.3). Здесь в состав корневого каталога включены подкаталоги ASM, VIR и DB, содержащие файлы компиляторов, программ антивирусной защиты и данных. В свою очередь, подкаталог ASM содержит компилятор языка ассемблер masm.exe и подкаталог ASMPROG, в котором находятся файлы с программами на этом языке. Подкаталог VIR содержит файлы aidstest.exe и dir.exe. В подкаталоге DB расположены файлы базы данных.

Рис. 10.3. Пример дерева каталогов

Объединение файлов в каталоги не означает, что они каким-либо образом сгруппированы в одном месте на диске. Более того, один и тот же файл может быть «разбросан» (фрагментирован) по всему диску. Сведения о местонахождении отдельных частей файла хранятся в таблице размещения файлов (FAT — File Allocation Table), находящейся на том же диске.

Спецификация файла

Для того чтобы операционная система могла обратиться к файлу, необходимо указать:

q диск;

q каталог;

q полное имя файла.

Эта информация наличествует в спецификации файла, которая имеет следующий формат:

[drive:][\][path\]filename[.type],

или в русскоязычном варианте:

[дисковод:][\][путь\]имя файла[.расширение].

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

Элемент drive (дисковод) обозначает диск, на котором находится файл или куда он записывается, например, А:, B:, С:, D: и т. д. Если дисковод не указан, то по умолчанию используется текущий диск. Текущий диск — это диск, с которым в настоящий момент работает операционная система (ОС). Текущий диск устанавливается автоматически после загрузки ОС и может быть переустановлен командой операционной системы. Имя текущего диска всегда выводится в подсказке на экране.

Path (путь) — это каталог или последовательность каталогов, которые необходимо пройти по дереву каталогов к тому каталогу, где находится файл. Имена в пути записываются в порядке от корневого каталога и разделяются символом «\». Путь может начинаться символом «\»: в этом случае поиск файла начинается с корневого каталога. Путь может начинаться символами «..»: тогда поиск файла начинается с предшествующего надкаталога. Если путь опущен, то по умолчанию подразумевается текущий каталог.

Например,

D:\VIR\aidstest.exe — файл aidstest.exe находится в подкаталоге VIR на диске D:. Путь состоит из корневого каталога и подкаталога VIR. (Если текущий дисковод D, то можно указать \VIR\aidstest.exe.)

D:\ASM\ASMPROG\sqr.asm — файл sqr.asm находится в каталоге ASMPROG. Путь включает в себя корневой каталог и подкаталоги ASM и ASMPROG.

Masm.exe — файл masm.exe отыскивается на текущем диске в текущем каталоге. Текущим каталогом должен быть каталог ASM. (Если текущий каталог ASMPROG, то годится спецификация ..masm.exe.)

Дисковод и путь могут не указываться при обращении к файлам типа COM, EXE или BAT даже если диск и каталог не являются текущими. В этом случае сведения о диске и пути указываются в команде PATH, включаемой в файл Autoexec.bat. Для стандартных символьных внешних устройств ПК (они выступают здесь как логические устройства) предусмотрены постоянные имена, (правда, без расширений), позволяющие обращаться к ним как к файлам:

q PRN или LPT1 (2, 3) — принтер;

q CON — консоль (клавиатура при вводе и дисплей при выводе);

q COM1 (2, 3, 4) — дополнительные символьные внешние устройства;

q NUL — фиктивное устройство; обычно используется при отладке программ пользователей.








Дата добавления: 2016-04-02; просмотров: 621;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.