Физическая и логическая структура магнитных дисков

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

 

 

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

Так же как и основная память, поверхность диска (или дисков) имеет структуру. Элементы физической структуры следующие:

1. дорожка– концентрическая окружность, по которой движутся головки чтения-записи при размещении или поиске данных. Дорожки нумеруются, начиная с нуля. Нулевой номер имеет самая внешняя дорожка на диске;

2. секторы– блоки, в которых размещаются данные на дорожке при записи. Нумеруются, начиная с единицы. Помимо пользовательской информации (самих данных), сектора содержат служебную информацию, например, собственный номер. Сектора являются минимальными адресуемыми элементами данных для диска;

3. стороны диска. Нумеруются, начиная с нуля. Для винчестера, расположенного вертикально, нулевой номер имеет самая верхняя сторона, для гибкого диска нулевой номер у «лицевой» стороны дискеты;

4. цилиндр– совокупность дорожек с одинаковыми номерами на разных сторонах диска. Номера цилиндров совпадают с номерами дорожек;

5. кластер– совокупность секторов, имеющих смежные номера. Может состоять из одного сектора (для дискет) или нескольких (для винчестера). Является минимальным адресуемым элементом данных для операционной системы. Кластеры используются операционной системой для добавления данных к файлу: добавление очередной «порции» данных к файлу выполняется в объеме кластера независимо от того, что реальный объем добавляемых меньше объема кластера. Это приводит к нерациональному расходованию внешней памяти. Поэтому не рекомендуется хранить на диске большое количество маленьких файлов: они имеют много пустых «хвостов».

 

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

Дискретное пространство диска имеет, в свою очередь, следующую структуру (она описана в порядке возрастания номеров сторон, дорожек и секторов):

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

2. главная загрузочная запись MBR (Master Boot Record). Содержит код процессора, необходимый для дальнейшей загрузки операционной системы;

3. загрузочная запись операционной системы BR (Boot Record). Содержит следующую информацию: программу загрузки операционной системы, размер кластера, количество копий FAT, количество файлов в корневом каталоге Root, размер FAT и некоторую другую информацию;

4. таблица размещения файлов FAT (File Allocation Table) и ее копии. Содержит полную карту принадлежности кластеров файлам и используется операционными системами для хранения сведений о размещении файлов на диске и о «плохих» (bad) кластерах. В силу важности FAT она дублируется несколько раз;

5. корневой каталог Root. Это таблица, в которой каждая запись соответствует файлу или подкаталогу, подчиненному корневому каталогу диска, и имеет структуру:

· имя файла или подкаталога;

· тип файла,

· атрибуты, в которых определяются следующие параметры файла или подкаталога: предназначенность только для чтения, скрытость, системность, маркер принадлежности данной записи метке тома, признак принадлежности данной записи подкаталогу, а не файлу, архивность;

· время создания;

· дата создания;

· номер начального кластера файла или подкаталога;

· размер файла.

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

6. область размещения файлов FA (File Area). Содержит файлы и подкаталоги, которые описаны в Root. Следует иметь в виду, что при размещении файлов на диске операционная система выбирает для этого первые попавшие свободные кластеры. Поэтому в результате файл физически "разорван" на множество "кусков", что увеличивает время его сборки впоследствии. Такое явление называется фрагментацией файла. Для устранения фрагментации выполняют дефрагментацию файла, когда он по возможности "собирается" в единое целое, что позволяет оптимизировать работу с внешней памятью.

 

Взаимосвязь областей Root, FAT, FA при поиске файла или каталога по его имени, указанному, например, в команде MS DOS, показана ниже.

Пусть файл с именем ABC.TXT расположен в области FA в тех кластерах, которые выделены серым цветом (их номера показаны ниже):

 

               

 

Остальные кластеры свободны. Тогда в FAT в записях с номерами 10 – 17 появятся данные, показанные в таблице:

 

№ записей FAT Содержимое записи FAT
 
 
 
 
EOF

 

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

 

В области Root имеется запись с описанием файла ABC.TXT следующей структуры:

 

Имя файла Тип файла ... № первого кластера ...
ABC TXT    

 

Тогда при упоминании имени файла в команде операционная система выполняет следующие действия:

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

· обращается к FAT, адрес которой фиксирован и известен, и по номеру первого кластера находит соответствующую запись FAT;

· в найденной записи FAT выбирает содержимое записи – это номер следующей записи FAT с описанием продолжения (или окончания) файла;

· если очередная запись FAT содержит EOF, “сборка” файла закончена; иначе повторяется предыдущий шаг.








Дата добавления: 2015-03-03; просмотров: 4402;


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

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

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

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