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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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



Представление пользователя о файловой системе как об иерархически организо­ванном множестве информационных объектов имеет мало общего с порядком хранения файлов на диске, файл, имеющий образ цельного, непрерывающегося набора байт, на самом деле очень часто разбросан «кусочками» по всему диску, причем это разбиение никак не связано с логической структурой файла, напри­мер, его отдельная логическая запись может быть расположена в несмежных секторах диска. Логически объединенные файлы из одного каталога совсем не обязаны соседствовать на диске. Принципы размещения файлов, каталогов и системной информации на реальном устройстве описываются физической орга­низацией файловой системы. Очевидно, что разные файловые системы имеют разную физическую организацию.

Диски, разделы, секторы, кластеры

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

Рис. 5.6 Схема устройства жесткого диска

На каждой стороне каждой пластины размечены тонкие концентрические коль­ца — дорожки (traks), на которых хранятся данные. Количество дорожек зависит от типа диска. Нумерация дорожек начинается с 0 от внешнего края к центру диска. Когда диск вращается, элемент, называемый головкой, считывает двоич­ные данные с магнитной дорожки или записывает их на магнитную дорожку.

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

Цилиндр (cylinder) –совокупность дорожек одного радиуса на всех поверхностях всех пластин паке­та.

Каждая дорожка разбивается на фрагменты, называемые секторами (sectors), или блоками (blocks), так что все дорожки име­ют равное число секторов, в которые можно максимально записать одно и то же число байт. Сектор имеет фиксированный для конкретной системы размер, вы­ражающийся степенью двойки. Чаще всего размер сектора составляет 512 байт. Учитывая, что дорожки разного радиуса имеют одинаковое число секторов, плот­ность записи становится тем выше, чем ближе дорожка к центру.

Сектор — наименьшая адресуемая единица обмена данными дискового устройст­ва с оперативной памятью.

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

Рис.5.7 Считывание избыточных данных при обмене с диском

Операционная система при работе с диском использует, как правило, собствен­ную единицу дискового пространства, называемую кластером (cluster).

Иногда кластер называют блоком (например, в ОС Unix), что может привести к терми­нологической путанице. Вообще, терминология, используемая при описании форматов дисков и файловых систем, зависит от аппаратной платформы (RISC, Wintel и т. п.) и операционной системы. Это нужно учитывать и трактовать термины в зависимости от контекста.

При соз­дании файла место на диске ему выделяется кластерами.

Например, если файл имеет размер 2560 байт, а размер кластера в файловой системе определен в 1024 байта, то файлу будет выделено на диске 3 кластера.

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

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

Загрузчик операционной системы — небольшая программа, которая на­чинает процесс инициализации операционной системы после включения пита­ния или рестарта компьютера.

Прежде чем форматировать диск под определенную файловую систему, он мо­жет быть разбит на разделы.

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

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

Логическое устройство функционирует так, как если бы это был отдельный фи­зический диск. Именно с логическими устройствами работает пользователь, об­ращаясь к ним по символьным именам, используя, например, обозначения А, В, С, SYS и т. п. Операционные системы разного типа используют единое для всех них представление о разделах, но создают на его основе логические устройства, специфические для каждого типа ОС. Так же как файловая система, с которой работает одна ОС, в общем случае не может интерпретироваться ОС другого типа, логические устройства не могут быть использованы операционными систе­мами разного типа. На каждом логическом устройстве может создаваться только одна файловая система.

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

На разных логических устройствах одного и того же физического диска могут располагаться файловые системы разного типа. На рис. 5.8 показан пример дис­ка, разбитого на три раздела, в которых установлены две файловых системы NTFS (разделы С и Е) и одна файловая система FAT (раздел D).

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

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

 

 

 


Рис. 5.8 Разбиение диска на разделы



Поделиться:


Последнее изменение этой страницы: 2017-01-19; просмотров: 254; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.102.239 (0.008 с.)