Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002) (1186248), страница 37
Текст из файла (страница 37)
Более того, один и тот же файл может быть «разбросан» (фрагментирован) по всему диску. Сведения о местонахождении отдельных частей файла хранятся в таблице размещения файлов (ЕАТ вЂ” Ейе Айосаиоп ТаЫе), находящейся на том же диске. Спецификация файла Для того чтобы операционная система могла обратиться к файлу, необходимо указать; Е диск; 0 каталог, Е полное имя файла. Эта информация наличествует в спецификации файла, которая имеет следующий формат: [опте:][~][раей(епаае[.1уре] или в русскоязычном варианте: [дисковод:]Я[путьЯимя файла[.расширение] Квадратные скобки означают, что элементы, заключенные в них, могут отсутствовать. Сами квадратные скобки являются синтаксическими знаками и в спецификации не используются.
Вся спецификация не должна иметь пробелов. Элемент ппсе (дисковод) обозначает диск, на котором находится файл или куда он записывается, например А:, В:, О, 0: и т. д. Если дисковод не указан, то по умолчанию используется текущий диск. Текущий диск — это диск, с которым в настоящий момент работает операционная система (ОС). Текущий диск устанавливается автоматически после загрузки ОС и может быть переустановлен командой операционной " системы. Имя текущего диска всегда выводится в подсказке на экране.
Рагй (путь) — это каталог или последовательность каталогов, которые необходимо пройти по дереву каталогов к тому каталогу, где находится файл. Имена в пути ~ записываются в порядке от корневого каталога и разделяются символом «~». Путь ] может начинаться символом «~»: в этом случае поиск файла начинается с корне- ) вого каталога. Путь может начинаться символами «..»: в этом случае поиск файла начинается с предшествующего надкаталога, Если путь опущен, то по умолчанию " подразумевается текущий каталог.
Например: а 0:~Ч1Р~а16пезбехе — файл а1оз1ея.ехе находится в подкаталоге Ч1Р на диске Оь .". Путь состоит из корневого каталога и подкаталога Ч1Р. (Если текущий диско- ° вод О, то можно указать ~Ч1Р~а1Ыея.ехе.) ] 1ат Внешние запоминающие устройства гэ 0:~А5М~А5МРК06~эдг.аэю — файл эдг.юп находится в каталоге А5МРК06. Путь состоит из корневого каталога и подкаталогов А5М и А5МРК06. гэ Маэю.ехе — файл юаэю.ехе отыскивается иа текущем диске в текущем каталоге.
Теагушим каталогом должен быть каталог А5М. (Если текущий каталог А5МРК06, то годится спецификация .. юаэпъехе.) Дисковод и путь могут ие указываться при обращении к файлам типа СОМ, ЕХЕ или ВАТ, даже если диск и каталог ие являются текущими. В этом случае сведения о диске и пути указываются в команде РАТН, включаемой в файл Аи1оехес.Ьаб Для стандартных посимвольных внешних устройств ПК (они выступают здесь как логические устройства) предусмотрены постоянные имена (правда, без расширений), позволяющие обращаться к иим как к файлам: д РКК или 1.РТ1(2,3) — принтер; д СОК вЂ” консоль (клавиатура при вводе и дисплей при выводе); а СОМ1(2, 3, 4) — дополнительные посимвольные внешние устройства; о КОС вЂ” фиктивное устройство; используется при отладке программ пользователей.
Размещение информации на дисках Дорожки диска разбиты па секторы. В одном секторе дорожки обычно размещается 512 байт данных. Обмен данными между НМД и ОП осуществляется последовательно кластерами, содержащими целое число секторов. Кластер — это минимальная единица размещения информации на диске, состоящая из двух или большего числа смежных секторов дорожки (кластеры называют также единицами выделения памяти — аПосайоп пп11).
Поэтому, если необходимо разместить иа диске маленький файл, например размером 20 байт, он все равно займет дисковое пространство размером в кластер (минимум 2 х 512 - 1024 байт). Количество секторов в кластере должно быть равно целой степени 2. Таблица ГАТ16 в 16 битах отображает значение максимального номера кластера, количество кластеров иа диске (или в разделе диска) не больше, чем 2" = 65 525. По причине выхода за пределы 16-битиой адресации внутри кластера его максимальный размер должен быть меньше 64 Кбайт.
В ГАТ16 размер кластера (и количество кластеров) можно определить, разделив объем памяти диска иа 64 Кбайт (65525) и округлив результат до ближайшего большего числа, кратного степени двойки. Так, для диска емкостью 1,2 Гбайт размер кластера составит: 1258291,2/65,5 - 19,2 Кбайт, после округления получим 32 Кбайт; для дисков емкостью 2 Гбайт размер кластера составит 64 Кбайт, а для 2,5-гигабайтных дисков — более 64 Кбайт, что недопустимо.
Иными словами, ГАТ16 практически может работать только с дисками емкостью ие более 2 Гбайт. Поэтому была разработана более мощная 32-разрядиая файловая система ГАТ32. В этой системе количество секторов и количество кластеров могут быть одинаковыми и ие превышашп 232 единицы. Хотя размер кластера с целью экономии дискового пространства можно было бы сделать равным одному сегменту, зто не сде- Глава 6. Запоминающие устройства ПК 1ВВ лацо по причине большого размера файла ГАТ вЂ” таблицы размещения файлов (по имени этой таблицы называют и всю файловую систему целиком), который для диска, например, емкостью 10 Гбайт в этом случае будет иметь размер 60 Мбайт (а таких файлов иа диске должно быть два, и один из иих при наличии кэш-памяти для диска загружается в ОП! ).
Поэтому размеры кластеров в ГАТ32 приняты следую~цнии (табл. 6.3). Таблица 6.3. Размеры кластеров в РАТЗ2 Емкость диска, Гбайт Размер кластера, Кбайт 4 8 15 32 До э Дс 18 Дс 32 Более 32. ПРИМЕЧАНИЕ На диске емкостью 20 Гбайт 10-байтовый файл будет занимать 16 Кбайт памяти (по- скольку файл должен занимать целое число кластеров). Высвободить свободное про- странство в кластерах для использования другими файлами позволяют программы сжатия диска, в частности Опчебрасе. Но надежность работы файловой системы при этом снижается.
Кластеры, выделяемые одному файлу, могут находиться в любом свободном месте дисковой памяти и ие обязательно являются смежными. Файлы, хранящиеся в раз- бросанных по диску кластерах, называются фрагментированными. Адресация информации на диске Используются следующие системы адресации информации па МД: гз в системе В!03 — трехмерная; номер цилиндра (дорожки), магнитной головки (стороны диска), сектора; гз в системе !)ОЯ вЂ” последовательная сквозная нумерация секторов, начиная от внешнего 0-го цилиндра (дорожки), головки О, сектора 1. На каждом диске можно выделить две области: системную и данных. В системной области диска (иачииается с 0 дорожки, стороны О, сектора 1) размещены три зоны, содержащие: о Главную загрузочную запись (МВ — ща!и Ьоот гесогг!), в которой описывается конфигурация диска: какой раздел (логический диск) является системным (из системного раздела возможна загрузка операционной системы), сколько разделов иа этом диске, какого они объема.
Гэ Таблицу размещения файлов (ГАТ вЂ” 61е а!1осатьоп таЫе), содержащую код формата и полную карту принадлежности секторов файлам. ГАТ организована в виде списка кластеров (опи нумеруются от 2 до Аг ч- 1, где Аг — полное число кластеров иа диске), для каждого кластера в таблице указывается шестнадцатеричный код его признака: ГГГ1 — ГГГ7 — кластер лефектиый, 0002-ГГГО— 169 Внешние запоминающие устройства Таблица 6.4. Структура записи параметров файла Размер, байт Байты Параметр 0-7 Имя файла Расширение Атрибут Свободно В-1О 12-20 22-23 24-25 26-27 23-31 Время Дата Начальный кластер Размер В области данных расположены подкаталоги и сами данные. На жестких дисках системная область создается иа каждом логическом диске, Накопители на жестких магнитных дисках Накопители иа жестких магнитных дисках (НЖМД, жесткие диски, Нагг) П1зк Эггуе — НПЕ)) представляют собой устройства, предназначенные для длительного хранения информации.
В качестве накопителей иа жестких магнитных дисках широкое распространение в ПК получили накопители типа винчестер. Термин «виичестер» возник из жаргонного названия первой модели жесткого диска емкостью 16 Кбайт (1ВМ, 1973 год), имевшего 30 дорожек по 30 секторов, что случайио совпало с калибром 30/30 известного охотничьего ружья винчесиер. В этих накопителях один или несколько жестких дисков, изготовленных из сплавов алю- кластеры, используемые файлом 1код соответствует номеру кластера, где продолжается текущий файл), ГГГ8 — ГГГà — кластер содержит последнюю часть файла, 0000 — кластер свободен (все коды указаны для ГАТ16). Для каждого файла в корневом каталоге (3-я зона системной области) указывается номер его начального кластера, а в атом начальном и следующих кластерах в ГАТ указываются, соответственно, следующие кластеры файла, и так до последнего, где указан код ГГГГ. Таблица размещения файлов крайне важна, ибо без нее последовательно читать файл иа диске (особенио если кластеры файла записаны пе подряд, а через промежутки, занятые другими файлами) становится иевозможио.
Поэтому для надежности ГАТ иа диске дублируется. Когда файл иа диске удаляется, все его кластеры маркируются как свободные, ио сами данные файла ие удаляются (затираются только после записи иа их место других данных) — то есть удаленные файлы мож по восстановить (ком а1ща 080ЕЕЕТЕ 005, утилита ОИЕЙА5Е в пакете ХС). ы Корневой каталог диска — список файлов и/или подкаталогов с их параметрами. Параметры файла, содержащиеся в корневом каталоге: имя, расширение, атрибут, размер в байтах, дата и время создания или последнего обновления, номер начального кластера. Структура записи параметров файла в корневом каталоге показана в табл. 6А.
17О Глава 6. Запоминающие устройства ПК мнния нли из керамики и покрытых ферролаком, вместе с блоком магнитных головок считывания-записи помещены в герметически закрытый корпус. Под дисками расположен двигатель, обеспечивающий вращение дисков, а слева и справа поворотный позиционер с коромыслом, управляющим движением магнитных головок по спиральной дуге для их установки на нужный цилиндр.