Какая структура таблицы используется на hdd. Какое будущее в новом секторе и какая же структура жесткого диска? Как осуществляется запись и чтение информации

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

Физическая структура гибкого диска Информационный объем гибких дисков: V = p*d*k*l Минимальный элемент дорожка хранения информации дискете р – количество поверхностей диска (p = 2) d – количество дорожек на поверхности (d = 80) Сектор 512 байт k – количество секторов на дорожке (k = 18) l – емкость сектора (l = 512 байт). V = 2 * 80 * 18 * 512 = 1440 Кбайт

Логическая структура носителя в файловой системе FAT имеет следующие разделы: загрузочный кластер; таблица размещения файлов (содержит в своих ячейках цепочку номеров кластеров для каждого файла); корневой каталог; файлы;

Организация хранения в файловой системе FAT Минимальный адресуемый элемент носителя информации – КЛАСТЕР (может включать в себя от 1 до нескольких секторов) Размер кластера (от 512 байт до 64 Кбайт) зависит от типа используемой файловой системы и (часто) от информационного объема носителя.

Нумерация кластеров Кластеры нумеруются в линейной последовательности на магнитных дисках – от первого кластера нулевой дорожки до последнего кластера последней дорожки № № кластера дор 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 2 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54

Файловая система организует кластеры в файлы и каталоги. Файловая система отслеживает, какие из кластеров в настоящее время используются, какие свободны, какие помечены как неисправные При записи файлов будет всегда занято целое число кластеров Минимальный размер файла равен размеру одного кластера Максимальный размер файла соответствует общему количеству кластеров на диске. Файл записывается в произвольные свободные кластеры Каталог – это тот же файл, в котором содержится список файлов этого каталога.

ПРИМЕР Файл_1 занимает на диске 4 кластера (например, 34, 35, 47, 48). Файл_2 занимает на диске 2 кластера (например, 36 и 49). загрузочный кластер № № кластера дор 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 2 37 38 39 40 41 42 B B 45 46 47 48 49 50 51 52 53 54 занятые кластеры свободные кластеры поврежденные кластеры

Таблица размещения файлов (FAT - file allocation table) Содержит полную информацию о кластерах, которые занимают файлы; Хранится в двух идентичных копиях с целью более надежного сохранения этой важной информации; Количество ячеек FATсоответствует количеству кластеров на диске, а значениями ячеек являются цепочки размещения файлов – последовательности адресов кластеров, в которых хранятся файлы

Фрагмент FAT 35 47 48 № К 49 К № сектора дор 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 2 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54

FAT 12 Файловая система для ОС Windows Выделяет 12 битов для хранения адреса кластера. Может адресовать 212=4096 кластеров. Используется для дискет, в них объем одного кластера равен одному сектору (512 байтов). Максимальный объем 512 байт * 4096 = 2 097 152 байт= 2048 Кбайт = 2 Мбайт Используется только для дискет

FAT 16 Файловая система для ОС Windows Выделяет 16 битов для хранения адреса кластера. Может адресовать 216=65536 кластеров. Объем кластера не может быть больше 128 секторов (64 Кбайта) Максимальный объем 64 Кбайт * 65536 = 4 194 304 Кбайт= 4096 Мбайт = 4 Гбайт Используется для некоторых видов флэш-памяти

FAT 32 Файловая система для ОС Windows Выделяет 32 бита для хранения адреса кластера. Может адресовать 232 = 4 294 967 296 кластеров. Объем кластера по умолчанию составляет 8 секторов (4 Кбайт) Может использоваться для носителей объемом 4 Кбайт * 4 294 967 296 = 17 179 869 184 Кбайт= 16 777 216 Мбайт = 16 384 Гбайт = 16 Тбайт Может использоваться для жестких дисков самого большого объема

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

NTFS Файловая система для ОС Windows Позволяет устанавливать различный объем кластера – от 512 байтов дл 64 Кбайт. По сравнению с FAT 32 увеличивает надежность и эффективность использования дискового пространства. Для этого используется система журналирования В случае сбоя компьютера целостность файловой системы восстанавливается с помощью файла журнала NTFS и данных о контрольных точках. В Windows 2000 и Windows XP файловая система NTFS также обеспечивает такие дополнительные возможности, как разрешения для файлов и папок, шифрование, дисковые квоты и сжатие.

Объем файла в разных файловых системах Жесткий диск Флэш-брелок DVD- диск Сколько места будут занимать эти файлы на дискете?

Src="https://present5.com/presentation/3/202611702_437655269.pdf-img/202611702_437655269.pdf-18.jpg" alt="Форматирование из командной строки С: > format A: /A: 1024 С: > format A:"> Форматирование из командной строки С: > format A: /A: 1024 С: > format A: /Q

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

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

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

Проверка файловой системы диска В результате неправильного завершения приложений, внезапного отключения питания могут возникать повреждения отдельных кластеров и файлов: сбойные (нечитаемые) кластеры; ошибки в именах файлов; нарушения в цепочке размещения файлов – потерянные кластеры и кластеры, принадлежащие одновременно нескольким файлам. Для восстановления файловой системы можно использовать служебную программу «Проверка диска» (она автоматически запускается при загрузке ОС Windows после неправильного завершения работы или может быть запущена пользователем в произвольный момент.

Иерархическая файловая система } Носитель (диск, флэш) С: … Папка 1 Файл 1 … E: D: Файл 1 } } Папка N Файл 1 … Файл 1 физические диски разделы, тома, логические диски каталоги } файлы? корневой каталог (папка) ?

Структура записей в каталоге (в системе FAT) Имя файла Адрес первого кластера Объем файла (Кбайт) Дата создания Время создания Атрибуты Файл_1 34 2 14. 01. 2006 14: 29 ar Файл_2 36 1 20. 03. 2006 19: 45 hs Атрибуты: а – архивный, r – только чтение, h – скрытый, s - системный Фрагмент FAT 35 47 48 К К 49

Первый серийный жесткий диск емкостью 16 кбайт был выпущен компанией IBM еще в 1973 р., и содержал 30 магнитных цилиндров по 30 дорожек на каждом. Острые на язык разработчики уловили схожесть этих цифр с маркой "30/30", которая соответствует названию оружия - "винчестеру". - это накопитель информации на жестких магнитных дисках. Основным элементом накопителей на жестких магнитных дисках (HDD - Hard Disk Drive) является несколько жестких алюминиевых или стеклянных пластин круглой формы - дисков. Поверхность такого диска покрывается тонким слоем вещества, которая способна сохранять остаточную намагниченность после воздействия на нее внешнего магнитного поля. Этот слой называется рабочим или магнитным и на нем сохраняются записанные данные. Накопитель состоит из таких элементов.
  • Дисков с вращающимся приводом, которые смонтированы на общей вертикальной оси.
  • Головки чтения/записи информации с собственным приводом.
Основной критерий качества - поверхностная плотность записи . Современный показатель - 60-80 Гбайт/пластину.

Любой винчестер состоит из трех основных блоков. Итак, рассмотрим, каковы составляющие структуры жесткого диска . Первый блок - собственно, само хранилище информации - одна или несколько стеклянных (или металлических) дисков. Структура диска выглядит так: магнитная поверхность каждого диска разделена на концентрические "дорожки (track) ", которые, в свою очередь, делятся на отрезки - секторы . Наряду с дорожками, которые имеют свой номер, и секторами, существуют цилиндры. Цилиндр - это совокупность всех совпадающих друг с другом дорожек по вертикали по всем рабочим поверхностям. Таким образом, чтобы узнать, какое количество цилиндров содержит жесткий диск, необходимо просто умножить число дорожек на суммарное число рабочих поверхностей. При низкоуровневом форматировании диска, которое исполняется на заводе-производителе, сначала и в конце каждого сектора создаются области, которые содержат информацию об их номерах и другое (служебная информация). Размер сектора составляет величину 571 байт, из которых 512 байт отведено под полезные для пользователя данные, другие - под заголовок (header) или префикс, по которому определяется начало и номер сектора и окончание (trailer) или суффикс, где записывается контрольная сумма, необходимая для проверки сохранности диска.
Второй блок - механика жесткого диска, которая отвечает за вращение массива "блинов" и точное позиционирование системы считывающих головок. Каждой рабочей поверхности жесткого диска соответствует одна считывающая головка, причем размещаются они по-вертикали точным столбиком. А значит, в любой момент времени все головки находятся на дорожках с одинаковым номером. То есть, работают в пределах одного цилиндра. Третий блок включает электронную начинку - микросхемы, отвечающие за обработку данных, коррекцию возможных ошибок и управления механической частью, а также микросхемы кэш-памяти. Кластер (cluster) - это наименьшая область диска, которая выделяется для файла или его части. Каждый файл занимает на диске пространство, которое равняется целому числу кластеров. Как правило, кластер состоит из нескольких секторов. Для жестких дисков размер кластера определяется при форматировании и зависит от версии операционной системы и размера диска. Но дисковое пространство занимается неэффективно. Например, необходимо сохранить файл в 500 байт. Зная, что каждый файл может занимать пространство на целом числе кластеров, то в этом случае будет занят один кластер. Файл будет записан с потерей дискового пространства.

Качественные характеристики жесткого диска

Время поиска сектора . Время поиска сектора (latency time) - это среднее время, необходимое для того, чтобы искомый сектор оказался под головкой после ее выведения на дорожку. Среднее время поиска равняется половине периода вращения диска и рассчитывается по формуле: Среднее время поиска = 1/(число оборотов двигателя в секунду*2) То есть при частоте вращения 7200 об/хв. время поиска составляет величину 4,17 мс. Скорость чтения данных и спецификация . Средний показатель скорости чтения данных - около 40-45 Мбайт/с. Считается, что контроллер на материнской плате спецификации UDMA/33 обязан обеспечивать скорость чтения данных не менее 33 Мбайт/с. А современные спецификации, например, UDMA/100 и UDMA/133 должны гарантировать не менее 100 и 133 Мбайт/с. Скорость передачи данных определяет объемы данных, которые могут быть переданы из накопителя в компьютер и назад за определенные промежутки времени. Скорость передачи данных определяется двумя факторами:
  • Способом подключения накопителей, то есть производительностью интерфейса.
  • Скоростью считывания данных головками.
Скорость считывания данных (ее называют внутренней скоростью обмена данными и измеряют в Мбайт/с) можно определить по формуле: Скорость считывания данных = количество секторов на дорожке * 512* * частота вращения дисков / 1000000. Частота вращения дисков измеряется в об/с, 512 - количество байт данных в секторе. Среднее время поиска . Среднее время поиска (Average seek time) - среднестатистическое время, в течение которого головки смещаются из одного цилиндра на другой. Этот показатель зависит от конструкции привода головок и составляет величину до 10 мс. Среднее время доступа . Определяется как сумма среднего времени поиска и времени задержки и характеризует среднестатистическое время, необходимое для получения доступа к данным, записанным на произвольном секторе. Скорость вращения диска . Показатель, напрямую связанный со скоростью доступа и скоростью чтения данных. Существуют параметры 5400 об/хв., 7200 об/хв. (IDE); 10000 об/хв., 15000 об/хв. (SCSI). Жесткие диски подключаются к материнской плате при помощи специальных шлейфов-кабелей.

Таблица размещения файлов

Таблица размещения файлов - это область на диске, куда заносятся номера кластеров, которые занимаются файлами. Сюда не входят кластеры, которые содержат служебную информацию (загрузочные секторы, сама таблица размещения файлов и данные корневого каталога). В операционных системах производства Microsoft популярна файловая система FAT (File Location Table). На каждом логическом диске может быть создана отдельная файловая система. Таким образом, на одном жестком диске могут существовать файловые системы нескольких типов.

Популярные файловые системы

FAT . Эта файловая система используется в операционных системах MS DOS, Windows 3.x/9.x/2000, ME, XP, OS/2. HPFS . Название этой файловой системы пошло от High Реrfomаnce File System, что значит высокопродуктивная файловая система. Поддерживается операционными системами OS/2, Windows NT. NTFS . Название этой файловой системы пошло от Windows NT File System, что значит файловая система Windows NT/2000, поддерживается операционными системами Windows NT/2000, ХР.

Логические диски

Известно, что компьютер присваивает всем дискам, независимо от их конструкции логические имена А:, В:, С:. Имена А:, В: по умолчанию присваиваются накопителям на гибких дисках. Системному логическому диску, тому, на котором записана операционная система, присваивается имя С:. Пространство жесткого диска можно разбить на разделы и логические диски. Операционные системы работают с логическими дисками, а не с физическими. Преимущества развития винчестеров на несколько логических дисков:
  • Уменьшаются потери дискового пространства.
  • Упрощается структуризация данных.
  • Упрощается процесс дефрагментации диска, проверки на вирусы, и т. д.
На одном диске можно сохранять рабочие программы, на другом - документацию и архивы, игры (инсталляционные файлы). В случае сбоя в работе потеря информации минимизируется. Если вы не знаете

ОРГАНИЗАЦИЯ ЖЕСТКИХ ДИСКОВ

Введение

1. Организация жестких дисков

1.1. Блочные устройства

1.2. Устройство жестких дисков

1.2.1. Физические координаты НЖМД: цилиндры, головки и секторы

1.2.2. Логические блоки

1.2.3. Функции BIOS для работы с жесткими дисками

1.2.4. Проблемы BIOS при работе с большими дисками

2.3. Структурная схема жесткого диска

1.3.1. Структурная схема физического устройства

1.3.2. Иерархия уровней абстракции представления информации

1.4. Форматирование жестких дисков

1.4.1. Физическое форматирование (низкоуровневое)

1.4.2. Логическое форматирование

1.5. Разделы

1.5.1. Первичные разделы

1.5.2. Дополнительные (расширенные) разделы

1.5.3. Подразделы дополнительного раздела

1.5.4. Изменение размеров разделов.

1.6. Файловые системы

1.6.1. FAT16

1.6.2. FAT32

1.6.3. NTFS

1.6.4. HPFS

1.6.5. Ext2fs

1.7. Монтирование файловых систем

1.7.1. Порядок назначения имен дисков

1.8. Порядок загрузки операционной системы

1.8.1. Главная загрузочная запись (MBR)

1.8.2. Загрузочный блок ОС (BR)

1.9. Заключение

Введение

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

1. Организация жестких дисков

1.1. Блочные устройства

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

Поиск места, где информация находится на носителе

Доступ к информации

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

Поэтому для повышения эффективности работы устройства делают блочными: на каждую операцию поиска приходится чтение или запись достаточно большой порции данных, которую называют блоком. Таким образом, доступ к информации осуществляется произвольно адресуемыми блоками, а сами устройства называются блочными. Жесткие диски представляют собой одну из разновидностей блочных устройств. Размер блока информации со временем стал стандартным для всех жестких дисков и составляет 512 байт. Например, количество блоков на диске размером 40Гб составляет порядка 80 миллионов.

1.2. Устройство жестких дисков

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

1.2.1. Физические координаты НЖМД: цилиндры, головки и секторы

На физическом уровне диск имеет три степени свободы для указания того места (три координаты), где информация будет записываться или считываться:

  Цилиндр . При вращении дисков с магнитным покрытием головки двигаются по окружности относительно пластин. При этом все они находятся на определенном расстоянии от центра диска. Совокупность этих круглых траекторий головок на всех поверхностях дисков, находящихся на одном удалении от центра, называют цилиндром. Поскольку магнитные головки жестко связаны друг с другом, то они перемещаются синхронно и одновременно находятся в одном и том же цилиндре. Для установки головок на заданный цилиндр необходимо привести в движение блок головок, для чего требуется время порядка 1.20 миллисекунд.

  Головка . Несколько поверхностей обеспечивают дополнительную возможность выбора. Для перехода от одной головке к другой не требуется никакого времени, так как при этом переключение осуществляется без привлечения механических узлов.

  Сектор . Один блок информации является относительно небольшой порцией данных, которая территориально соответствует небольшой дуге окружности. Если смотреть из центра, то такие дуги размещаются в одном угловом секторе. Строго говоря, на современных дисках это не так, поскольку длины окружностей возрастают с увеличением радиуса, а размер одного бита всюду одинаков. Таким образом, на длинных дорожках помещается больше битов, а, стало быть, больше блоков данных. Для выбора сектора на дорожке двигать головки не нужно, зато нужно ждать, когда пластины повернутся так, чтобы адресная метка сектора подошла к головкам чтения/записи. При скорости вращения диска порядка 5.7 тысяч оборотов в минуту время ожидания сектора оказывается порядка 8-10 миллисекунд. Это время даже больше времени перемещения головок, однако, после их перемещения метку сектора все равно приходится искать, так что смена цилиндра является самой длинной операцией при поиске информации.

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

Довольно часто можно слышать как термин блок , так и термин сектор . И то, и другое указывает порцию данных размером 512 байт, если речь идет о жестком диске. Однако, в то время, как слово «блок» отражает логическую структуру данных на диске, слово «сектор» отражает лишь часть физической структуры дисков, которая со временем все больше скрывается от нас в недрах встроенного контроллера. Отсюда следует вывод, что более правильно пользоваться словом блок .

1.2.2. Логические блоки

Все современные жесткие диски перешли на новый, более простой в использовании вид адресации - линейный . Каждый блок характеризуется единственным числом, своим номером. Современный стандарт ATA-5 отводит для хранения номеров диска 28 бит , что позволяет адресовать 268435456 блоков, или примерно 137.4 Гигабайт.

Интерпретация номера является скрытой во встроенном контроллере жесткого диска. Несмотря на это, существует некоторое общепринятое для производителей жестких дисков правило, по которому логический номер блока переводится в номера цилиндра, головки и сектора:

<блок> = (<цилиндр> * ЧИСЛО_ГОЛОВОК + <головка>) * ЧИСЛО_СЕКТОРОВ + <сектор> - 1

ЧИСЛО_ГОЛОВОК Количество головок жесткого диска, возвращаемое BIOS

ЧИСЛО_СЕКТОРОВ Количество секторов жесткого диска, возвращаемое BIOS

<сектор> Номер сектора, из диапазона [ 1 . ЧИСЛО_СЕКТОРОВ ]

<головка> Номер головки, из диапазона [ 0 . ЧИСЛО_ГОЛОВОК-1 ]

<цилиндр> Номер цилиндра, из диапазона [ 0 . ЧИСЛО_ЦИЛИНДРОВ-1 ]

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

Несмотря на то, что линейная адресация является более прогрессивной, она привела к появлению проблем с совместимостью , которые длятся уже несколько лет. В основном, эти проблемы касаются использования новых жестких дисков со старыми материнскими платами, а также различных установок BIOS, о которых будет рассказано ниже.

1.2.3. Функции BIOS для работы с жесткими дисками

Базовая система ввода вывода (BIOS) предоставляет программам возможность обмена информацией с жесткими дисками. Для этого имеется специальное программное прерывание, INT 13h .

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

Основными недостатками BIOS в отношении работы с дисками является то, что эти функции:

1. Слишком медленны. BIOS большинства компьютеров очень много времени тратят на выполнение повторных действий. Кроме того, они не всегда производят расширенную диагностику жестких дисков, в результате чего работа с жесткими дисками ведется не в самых оптимальных с точки зрения быстродействия режимах. Так, при современных скоростях чтения записи порядка 10 и более Мегабайт в секунду, скорость чтения через BIOS составляет всего 2-2.5Мб/c.

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

3. Имеют лишь 20-разрядную адресацию памяти. Функции BIOS изначально разработаны для процессоров Intel 8086, которые могли адресовать лишь 1 Мегабайт памяти. Таким образом, BIOS не может полностью реализовать возможности современного компьютера.

4. Имеют ограничения на адресацию блоков диска, которая приводит к проблемам с загрузкой ОС, расположенных за границей 8Гб. Современные версии BIOS имеют расширение, которое помогает решить эту проблему для современных ОС. Однако, это расширение несовместимо со старыми функциями BIOS, поэтому старые операционные системы, такие как DOS, которые пользуются старыми интерфейсами BIOS, не смогли и не смогут переступить границы в 8GB.

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

Функции BIOS предоставляют доступ к дискам путем назначения им уникальных номеров. Для номера диска отводится 1 байт, который содержит число в диапазоне 80-FFh (числам 00h-7Fh соответствуют дискеты). Внутри своих настроек BIOS именует диски буквами C, D, E., которые соответствуют номерам 80h, 81h, 82h, . Эти буквы соответствуют физическим дискам, и не следует их путать с буквами логических дисков, наблюдаемыми из операционных систем.

1.2.4. Проблемы BIOS при работе с большими дисками

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

-На номер цилиндра отводится 10 бит (1024 цилиндра).

-На номер головки отводится 8 бит (256 головок).

-На номер сектора отводится 6 бит (63 сектора).

Первый стандарт ATA на встроенные контроллеры жестких дисков определил

следующее диапазоны параметров жестких дисков:

-На номер цилиндра отводится 16 бит (65536 цилиндров).

-На номер головки отводится 4 бита (16 головок).

-На номер сектора отводится 6 бит (64 сектора).

В результате совместного применения этих требований емкость диска, адресуемая средствами BIOS, ограничивается размером 504 Мб. С появлением дисков большего размера возникли проблемы с использованием дискового пространства. Для решения этих проблем в BIOS были реализованы разные режимы трансляции дисковых адресов.

Режим NORMAL . Это собственно и есть режим, в котором видно всего 504 Мб. В этом режиме все величины номера цилиндра, головки и сектора без изменений передаются в контроллер жесткого диска. Использование этого режима невозможно с новыми дисками п по причине недоступности большей части информации.

Режим LARGE . Этот режим представляет собой усовершенствованный режим NORMAL. BIOS производит преобразование головок и цилиндров, тем самым, изменяя логическую геометрию диска. Поскольку количество головок, доступное BIOS превосходит максимально возможное количество головок самого диска в 16 раз, то BIOS уменьшает число логических цилиндров в 2,4,8 раз и одновременно с этим увеличивает число логических головок в такое же количество раз. Коэффициент перевода он запоминает и при каждом обращении к диску непосредственно перед формированием команды контроллеру он делает обратное преобразование. Таким образом, с помощью преобразования удается адресовать большее количество блоков диска.

Режим LBA . В этом режиме в контроллер посылается линейный номер блока. Благодаря этому BIOS не должен подстраивать свою логическую геометрию под некоторую начальную геометрию диска, ее просто нет. Поэтому BIOS просто назначает число головок равным 255, то есть максимально возможному значению, что позволяет адресовать до 8Гб.

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

2.3. Структурная схема жесткого диска

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

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

1.3.1. Структурная схема физического устройства

Структурная схема жесткого диска показана на рисунке ниже. Центральный процессор системы общается с жестким диском через стандартные интерфейсы подключения скоростных периферийных устройств. В современных жестких дисках все схемы управления процессами записи и считывания информации сосредоточены во встроенном котроллере жесткого диска. Процессор передает ему команды на осуществления операций ввода/вывода, а контроллер сообщает ему об их выполнении путем выдачи прерывания и возвращения статуса завершения операции.

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

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

Рис. 1 Структурная схема жесткого диска

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

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

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

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

1.3.2. Иерархия уровней абстракции представления информации

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

Схема уровней приведена на Рис.2 ниже.

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

Уровень 2 представляет собой адресуемое пространство блоков данных. На этом уровне емкость диска соответствует заявляемой в паспорте устройства емкости носителя. Адресуемое пространство блоков уже не содержит неисправных блоков, поэтому блоки имеют уникальные линейные номера. Эти номера указываются контроллеру жесткого диска для операций чтения-записи. Обычно адресуемая емкость диска составляет 70-90% его сырой емкости, посчитанной по площади пластины и плотности хранения информации.

Уровень 3 представляет собой адресное пространство жесткого диска, разбитое на непересекающиеся разделы (partitions). Разделы полностью подобны целому диску в том, что они состоят из смежных блоков. Благодаря такой организации для описания раздела достаточно указания начала раздела и его длины в блоках.

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

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

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

Рис. .2 Многоуровневая организация жестких дисков

1.4. Форматирование жестких дисков

Для организации хранении информации существует несколько уровней абстракции - разметки диска (форматированием). Отличают физическое и логическое форматирование.

1.4.1. Физическое форматирование (низкоуровневое)

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

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

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

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

1.4.2. Логическое форматирование

На более высоком уровне диск должен быть логически отформатирован. Логическое форматирование происходит на уровне 5 иерархии и заключается в создании файловой системы, благодаря чему достигается более высокая организация информации. Файлы имеют символьные имена, позволяя программам и пользователям осуществлять структурирование информации, осуществлять более быстрый поиск информации, а также управлять безопасностью доступа к информации.

Обыкновенно форматированием называют операцию, выполняемую утилитой format в DOS или Windows, либо утилитой типа dinit в UNIX. Эти утилиты проводят проверку блоков диска на исправность и на основе этих данных создают карту свободных блоков раздела, пригодных для хранения информации. Кроме того, они создают корневой каталог и так называемый суперблок, в котором находятся все необходимые сведения, необходимые для работы с файловой системой. Суперблок обыкновенно располагается либо в самом первом блоке раздела (вместе с загрузчиком ОС), либо в другом блоке, положение которого фиксировано относительно начала раздела. При загрузке операционной системы драйвер файловой системы производит считывание суперблока в память. На основе информации, взятой из него, он вычисляет расположение на диске корневого каталога и всех пользовательских данных. Дальнейшие обращения к диску производятся программами через файловую подсистему ОС.

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

Логическое форматирование применяется к разделу диска. Созданная в разделе файловая система обыкновенно отождествляется с самим разделом. Однако, это не совсем так. Дело в том, что информация о расположении раздела на диске хранится в суперблоке независимо от таблицы разделов, располагаемой в MBR. При создании суперблока в процессе форматирования информация из таблицы разделов о положении и длине форматируемого раздела переносится в суперблок. Это происходит по той причине, что операционная система берет все данные для работы с разделом именно из суперблока, а не таблицы разделов. Поэтому при изменении параметров раздела в таблице файловая система не ощутит этого изменения. Таким образом, содержимое таблицы разделов может не соответствовать файловой системе, если воспринимать ее как систему указателей для поиска нужных файлов или нового места для записи новых.

1.5. Разделы

Для организации операционных систем дисковое адресное пространство блоков разделяется на части, называемые разделами (partitions). Разделы полностью подобны целому диску в том, что они состоят из смежных блоков. Благодаря такой организации для описания раздела достаточно указания начала раздела и его длины в блоках. Уровень физических разделов (уровень 3 в иерархии) возник в ходе исторического развития. На первых жестких дисках не было разделов.

Жесткие диски были полными аналогами гибких дисков в том, что содержали только одну файловую систему. В те времена этой, по существу, единственной файловой системой для PC была FAT12. Она была рассчитана всего на 4096 кластеров, и была способна покрыть от 2 до 32Мб адресного пространства диска, что вскоре привело к проблемам, потому что жесткие диски постоянно совершенствовались. Наиболее простым выходом в складывающейся ситуации было изобретение псевдофизических дисков. разделов. Каждый раздел мог содержать одну файловую систему FAT12. Однако, для этого потребовалось указывать для каждого раздела его положение на диске и переводить логические адреса блоков внутри раздела в абсолютные адреса блоков. О времени этого перехода мы можем судить по усложнению структуры суперблока файловых систем FAT. Произошло это где-то с версии DOS 2.13, что соответствует, по-видимому, концу лета 1983 года.

Таблица разделов. Появление разделов привело к изобретению таблицы разделов. Таблица разделов описывает до четырех разделов на диске. Расположили это таблицу в самом первом блоке диска, поскольку это был единственный путь сделать ее легко доступной в процессе загрузки. После этого усложнения структуры первый блок диска получил название Главной Загрузочной Записи (MBR - Master Boot Record ).

Ограничение таблицы разделов только четырьмя разделами со временем оказалось неудобным. По этой причине появилось деление разделов на первичные и расширенные. На сегодняшний день деление жесткого диска на разделы является стандартной и обязательной процедурой. Использование дисков без деления на разделы невозможно. Необходимость разбиения диска на несколько разделов обусловлена следующими причинами:

-Установка более чем одной ОС на один жесткий диск;

-Повышение эффективности использования дискового пространства;

-Управление видимостью файлов для разных пользователей. (Защита от сторонних пользователей, вирусов и сбоев программ);

-Изоляция данных разного сорта для более простого и быстрого их архивирования и восстановления.

Разделы создаются программой fdisk, имя которой стандартно практически для всех ОС. Например такие утилиты, как Partition Magic и SyMon содержат свои собственные средства создания и работы с разделами, значительно превосходящие возможности обычных fdisk.

1.5.1. Первичные разделы

Первичные разделы называются так потому, что их описатели располагаются непосредственно в MBR. Первичные разделы описывают файловые системы, а также специальные разделы свопинга и дополнительные разделы. Загрузка компьютера может происходить только с первичных разделов для всех систем Microsoft и для большинства ОС других производителей.

1.5.2. Дополнительные (расширенные) разделы

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

Рис. 3 Внутреннее устройство расширенного раздела

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

-Каждая таблица разделов располагалась в первом блоке цилиндра.

-Каждая расширенная таблица разделов содержала только один описатель раздела и одну ссылку на следующую расширенную таблицу разделов.

-Каждая расширенная последующая таблица разделов располагалась дальше от начала диска, чем предыдущая.

-Раздел, описанный в расширенной таблице разделов, располагался сразу за ней, обычно в начале следующей дорожки.

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

1.5.3. Подразделы дополнительного раздела

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

Существует путаница между подразделами расширенного раздела и логическими дисками. Путаница исходит из утилиты fdisk. Эта утилита создает подразделы внутри дополнительного раздела и именует их логическими дисками. Однако логическим диском является отформатированный раздел, содержащий файловую систему FAT, NTFS или HPFS, то есть понятную операционной системе. Но далеко не всякий подраздел обязан содержать именно такую систему.

1.5.4. Изменение размеров разделов.

Размер раздела хранится на физическом уровне в двух местах:

-в таблице разделов, основной (MBR) или какой-либо расширенной.

-в суперблоке файловой системы.

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

Изменение размера форматированного раздела должно производиться с помощью специальных программ. Эти программы понимают файловую систему, диагностируют, содержит ли та часть раздела, которую предполагается удалить, файлы, переносят их в другое место, укорачивают или удлиняют служебные структуры, такие как FAT, MFT или inode. Лишь после того, как управляющие структуры файловой системы адаптированы к новому значению её размера, это новое значение может быть поставлено в суперблоке, а потом и в таблице разделов.

Изменение неформатированного раздела производится гораздо легче. Поскольку файловая система там отсутствует, то суперблока нет и достаточно лишь изменить значения в таблицах разделов.

1.6. Файловые системы

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

-Управление выделением свободных блоков под новые файлы

-Управление каталогами и именами файлов и ссылок

-Поиск содержимого файлов по имени.

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

1.6.1. FAT16

Эта файловая система является одной из самых старых систем, применяемых до сих пор. Поддержка ее реализована в большинстве современных ОС: DOS, Windows 95/98/ME, Windows NT /2000/ XP , OS /2, Linux , QNX , FreeBSD и других.

Название файловой системы происходит от имени ее главного управляющего элемента. таблицы размещения файлов (File Allocation Table). Единицей размещения данных является кластер, . совокупность нескольких смежных блоков диска. Размер кластера может быть 1, 2, 4, 8, 16, 32 или 64 блока. Файлы представляют собой цепочки кластеров. Таблица размещения файлов описывает цепочки кластеров, принадлежащих каждому файлу. Каждый кластер может принадлежать не более, чем одному файлу.

Число 16 в названии файловой системы говорит о количестве двоичных разрядов, отводимых под хранение номера кластера в таблице размещения файлов. FAT16 допускает на диске до 65525 кластеров, размер которых может быть от 512 до 32768 байт. Это позволяет создавать логические диски размером до 2Гб. Чем больше размер диска, тем больше необходим размер кластера.

Вообще говоря, большие кластеры снижают эффективность использования дискового пространства. Это связано с тем, что многие файлы являются короткими и часть места в кластере пропадает. Для большей надежности на диске хранится две копии FAT. Каждое изменение в размещении файлов одновременно отражается в обеих таблицах. Рассогласование этих таблиц является ошибкой. Если же рассогласование возникло, то не существует проверенного способа установить, какая из таблиц содержит более правильную информацию. Поэтому, наличие двух копий оправдано лишь в той ситуации, когда одна из копий просто физически не считывается с диска. Такая ситуация крайне маловероятна для жестких дисков, и является вероятной лишь для дискет. В самом деле, развитие систем FAT началось с системы FAT12, которая и до сих пор используется для дискет. В случае с дискетами физически отказ блока, принадлежащего одной копии FAT, никак не связан с отказом блока второй копии, поэтому наличие двух копий оправдано. Любая же программная ошибка при модификации FAT обычно синхронно отражается в обеих копиях. Во всяком случае, при исправном чтении обеих копий FAT существует проблема выбора правильной копии.

Топология файловой системы FAT16 приведена на рисунке Рис. 4.

Рис. 4 Топология раздела FAT16

Кластеры пользователя располагаются непосредственно за корневым каталогом, размер которого задается при форматировании и впоследствии не изменяется операционной системой.

1.6.2. FAT32

Система FAT32 является развитием системы FAT. Количество разрядов, кодирующих номер кластера, доведено до 32. В результате этого, FAT32 способна содержать почти в 65000 раз больше кластеров, чем система FAT16. Даже при маленьком размере кластера, разделы размером до 2Тб могут быть отформатированы под эту файловую систему. Дополнительно, система FAT32 имеет резервную копию загрузочной записи, и допускает произвольное расположение корневого каталога.

Система FAT32 доступна для использования начиная с Windows 95 OEM Release 2, в системах Windows 98, ME, а также в системах Windows 2000, XP. MS-DOS, Windows 3.1, Windows NT 3.51/4.0, ранние версии Windows 95 не могут использовать FAT32.

Рис. 5 Топология раздела FAT32

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

1.6.3. NTFS

Файловая система NTFS является более сложной по сравнению с системами FAT. Для работы с ней требуется больше оперативной памяти, поэтому ее использование начинает оправдывать себя только на сравнительно производительных и требующих высокой надежности системах. NTFS применяется в операционных системах Windows NT, Windows 2000 и Windows XP. Не рекомендуется форматировать под NTFS разделы размером менее 400Мб, потому что значительная часть места «пропадает» под служебные структуры данных.

В основе NTFS лежит структура данных, называемая MFT (Master File Table). MFT также является системным файлом, хранящим записи о других файлах. Каждая запись о файле имеет фиксированную длину. Запись содержит некоторую фиксированную информацию, общую для всех файлов, а также аттрибуты файла , которые описывают имя файла, место расположения его данных, время и дату создания и пр. Каждый файл описывается одним числом, представляющим собой индекс в таблице MFT.

Подобно системам FAT, система NTFS состоит из кластеров. Тем не менее, несколько усовершенствований сделано по сравнению с FAT. Кластеры могут иметь любой размер в секторах, кратный степени числа 2, вне зависимости от размера раздела. Кластеры заполняют весь раздел целиком, то есть кластер с номером 0 начинается сразу в начале раздела. Таким образом, по номеру кластера и его размеру однозначно вычисляется положения любого кластера на диске.

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

Рис. 6 Топология раздела NTFS

Недостатком NTFS является то, что MFT является жизненно важной структурой, повреждение которой приводит к полной невозможности восстановить файлы, даже если они не фрагментированы. Запись в каталоге лишь ссылается на запись в MFT, которая содержит положение файла на диске в виде атрибута. Система FAT, хотя и является более примитивной, но допускает восстановление нефрагментированного файла по записи в каталоге, которая указывает непосредственно первый кластер файла и его размер.

1.6.4. HPFS

Данная файловая система разрабатывалась фирмой IBM и является далеким родственником NTFS. Она используется преимущественно в операционной системе OS/2, о поддерживается также в ранних версиях Windows NT.

HPFS обладает лучшими характеристиками по сравнению с FAT, каталоги представлены в виде дерева, что позволяет довольно быстро искать необходимые файлы в больших каталогах, а также сортировать файлы по имени. Кластеры в этой файловой системе отсутствуют, выделение свободного места осуществляется посекторно. Весь раздел делится на участки длиной 8Мб, свободное место в каждом участке описывается битовой картой. Это упрощает выделение места под файлы, поскольку перемещение головой достаточно проводить к ближайшей битовой карте, а не к началу диска, как в системе FAT.

1.6.5. Ext2fs

Данная файловая система используется как основная файловая система для Linux.

1.7. Монтирование файловых систем

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

Таким образом, имя файла складывается из имени его раздела, и его имени внутри этого раздела. Это верно для любых файловых систем. Например, в системе DOS, для точного указания положения файла autoexec.bat необходимо указывать C:\autoexec.bat. В данном случае имя C: указывает раздел, а имя \autoexec.bat . имя файла внутри него.

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

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

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

Изменение имен дисков часто приводит к нарушению путей к программам, расположенным не на диске C:.

В системах Microsoft Windows NT/2000/XP монтирование дисков происходит при старте компьютера, однако они допускают переназначение имен дисков, за исключением загрузочного диска. Это позволяет частично избежать проблем, связанных с изменением конфигурации, хотя на практике является довольно неудобным.

1.7.1. Порядок назначения имен дисков

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

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

DOS, Windows 3.x, Windows 95/98/ME, OS/2

Эти операционные системы назначают имена дисков жестким образом, исходя из имеющихся дисков и типов разделов на них. Правила назначения разделов таковы:

1. Имена назначаются всем распознаваемым активным primary разделам, в порядке следования физических дисков.

2. Имена назначаются всем распознаваемым дискам, располагающимся внутри расширенных разделов. Расширенные разделы перебираются в порядке следования физических дисков.

3. Имена назначаются всем оставшимся primary разделам, в порядке следования физических дисков.

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

Windows NT/2000/XP

Первоначально, в процессе установки, эти операционные системы поступают аналогично версиям DOS & Windows 9x, с той разницей, что разделы NTFS являются для них также распознаваемыми. Однако, в дальнейшем эти системы допускают переназначение имен всех дисков, кроме того, с которого производится загрузка системы. Переназначение дисков производится с помощью утилиты Disk Administrator, входящей в поставку Windows NT/2000/XP. После назначения имен дисков, они закрепляются за своими разделами и более не зависят от появления или удаления других разделов.

1.8. Порядок загрузки операционной системы

Загрузка операционной системы. многоэтапный процесс. Он начинается в BIOS после тестирования оборудования и определения списка устройств, поддерживающих загрузку. Такими устройствами могут быть различные дисковые накопители, сетевые адаптеры, ленты и прочие устройства. Но в первую очередь загрузочными устройствами являются жесткие диски.

1. Выбор диска, с которого осуществляется загрузка. Выбор осуществляется пользователем в BIOS setup в процессе общего выбора устройства, с которого грузиться. При этом, BIOS переназначает номера дисков так, что загрузочный диск попадает на первое место среди всех других дисков.

2. С выбранного диска считывается главная загрузочная запись (MBR). Проверяется сигнатура, отвечающая за исправность считанных данных. Управление передается загрузчику, являющемуся частью MBR. С этого момента управление загрузкой покидает BIOS и определяется программами, расположенными на жестком диске.

3. Загрузчик из MBR выявляет загрузочный раздел операционной системы. В случае стандартного загрузчика MBR загрузочным разделом становится раздел из таблицы разделов MBR, отмеченный специальным флагом как активный раздел. В случае SyMon загрузочный раздел указывается пользователем в настройках операционной системы. Из первого блока загрузочного раздела считывается загрузочный сектор операционной системы. Проверяется сигнатура этого блока и в случае успеха управление передается расположенному в нем загрузчику.

4. Загрузчик операционной системы производит загрузку ядра операционной системы и передает управление в ядро.

5. После инициализации ядра и активации драйверов жесткого диска начинается процесс монтирования и инициализации файловых систем.

DOS ).

Указанные несколько этапов выполняются на разных уровнях, что проявляется, в первую очередь, в проблемах совместимости. Загрузка с помощью BIOS на начальном этапе ограничивает программные средства всех загрузчиков стандартными функциями BIOS.

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

1.8.1. Главная загрузочная запись (MBR)

Главная загрузочная запись всегда располагается в блоке 0 физического диска и является, по существу, загрузочным сектором жесткого диска в целом. MBR всегда загружается средствами BIOS по адресу памяти 0x0000:0x7C00. BIOS не различает загрузочные записи жестких и гибких дисков, несмотря на то, что первые, в отличие от вторых, содержат таблицу разделов. Исключением является, пожалуй, то, что в некоторых режимах логическая геометрия диска (число головок и секторов) корректируется по значениям таблицы разделов MBR. Основная работа BIOS с MBR заключается в загрузке и передаче управления загрузочному коду.

Ниже приведена структура MBR (а) и структура одного раздела в таблице разделов (б) загрузочной записи.

Рис. 7 Формат главной загрузочной записи (MBR)

1.8.2. Загрузочный блок ОС (BR)

Структура загрузочного блока ОС, называемого также загрузочной записью (Boot Record), может быть произвольной. В основном, в отношении загрузочных блоков выполняется два утверждения:

В конце загрузочного блока имеется сигнатура 0xAA55, полностью аналогичная сигнатуре MBR. Это связано с их родственным происхождением, . BIOS практически не различает по назначению эти блоки. Основной его принцип. загрузить, проверить сигнатуру и запустить.

Загрузочный блок ОС располагается всегда в самом первом блоке загрузочного раздела ОС. Точка входа в программу загрузчика находится всегда по адресу 0 относительно начала блока. Это дает универсальность загрузки любой ОС с помощью стандартного загрузчика MBR.

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

1. Достаточно мал, чтобы его было легко загрузить с помощью загрузчика размером всего 400-500 байт.

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

В зависимости от сложности файловой системы существует два решения этой задачи.

Первое заключается в том, что загрузчик пытается сразу прочитать часть файла операционной системы. Так делает, например, система DOS и ее наследники - Windows 95/98/ME. Их загрузчик находит в корневом каталоге файл IO.SYS и считывает первые его три блока. Основа этого. простота систем FAT, которая позволяет по первому кластеру файла, указанному в каталоге, выловить с диска начало файла. Тем не менее, системные файлы должны быть для этого дефрагментированными и скрытыми от обычных программ.

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

1.9. Заключение

В данном разделе были рассмотрены основные понятия, касающиеся организации информации на жестких дисках. Любая операционная система основывается на принципах, изложенных выше.

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

Разбиение диска на разделы производится программно, при помощи структуры данных, называемой таблицей разделов. Она располагается в самом первом блоке жесткого диска и называется также главной загрузочной записью (MBR). MBR содержит записи о 4 разделах, которых может оказаться недостаточно для установки нескольких операционных систем, если их количество превышает количество свободных разделов. Стандартное содержимое MBR позволяет загружать операционные системы с одного из 4 разделов, описанных в таблице разделов. Для загрузки большего количества ОС требуется специальное программное обеспечение, обеспечивающее загрузочное меню и загрузку выбранной пользователем операционной системы.

С внутренним устройством жёсткого диска HDD знакомы многие пользователи, включая тех, которым никогда не приходилось вскрывать гермоблок. Благо, это и не нужно, ведь на этот счёт в интернете имеется масса информации. А вот как именно устроена логическая структура диска знают лишь немногие. Физически жёсткий диск HDD представляет собой несколько закрепленных на центральном шпинделе магнитных пластин, имеющих особую «нарезку» , именуемую треками.

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

Только вот в случае с жёсткими дисками всё намного сложнее. Как компьютер определяет, в каком месте диска лежит какой файл? Каким образом достигается отказоустойчивость, благодаря которой мы можем переустанавливать операционную систему, не затрагивая пользовательские файлы? Это было бы едва возможно, если бы данные не хранились на диске в упорядоченном виде. Тема логической структуры HDD-диска настолько глубока и обширна, что рассмотреть её в рамках одной статьи не представляется возможным, поэтому сегодня мы коснёмся только двух её самых важных аспектов - адресации и разметки .

Адресация жесткого диска

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

Первый механизм адресации, который использовался в ранних моделях жёстких дисков назывался CHS , что расшифровывалось как Cylinder, Head, Sector - цилиндр, головка, сектор . Что такое головка и сектор, надеемся, вам понятно. Под цилиндром же нужно понимать совокупность круговых дорожек одинакового радиуса на всех магнитных поверхностях пластин одного накопителя.

По сути, CHS это ничто иное, как трёхмерная система координат, где Cylinder это номер дорожки на поверхности диска, Head - номер считывающей головки, а Sector - номер конкретного сектора. Когда компьютеру нужно было прочитать некий файл, он делал запрос в формате CHS, и считывающая головка переходила как раз в нужный сектор, в котором этот файл был записан.

Очевидный минус технологии CHS заключался в поддержке дисков весьма ограниченного объёма, так как на низком уровне под адресацию изначально выделялось немного памяти. Максимальный объём диска с CHS не мог превышать 508 Мб. Поэтому, когда появились более объёмные диски, возникла нужда в новых механизмах адресации. Последующие механизмы адресации были основаны на CHS и представляли собой его расширенную версию.

Настоящим прорывом стал LBA (Logical block addressing) , не нуждающийся в учёте геометрии жёсткого диска, вместо этого всем секторам от самого первого (нулевого) до самого последнего присваивался свой порядковый номер, служащий идентификатором. При этом под адресацию выделялось гораздо больше памяти. В общем, максимальный объём жёсткого диска, с которым может работать LBA составляет 128 Пиб , что намного больше объёма любых современных дисков, используемых в персональных компьютерах.

Разметка жёсткого диска

С адресацией всё более-менее ясно, теперь давайте перейдём к другому важному понятию - разметке жёсткого диска. Разметка - это разделение общего пространства диска на логические разделы иначе партиции, которые могут быть видны в операционной системе. Зачем вообще нужно такое разделение? Во-первых , это позволяет разграничивать загрузочные, системные и пользовательские файлы, во-вторых , использовать на каждом из разделов свой тип файловой системы, в-третьих - устанавливать на один ПК несколько разных операционных систем.

Существует две основных схемы разбиения на партиции. Самой распространённой является MBR . Называется она так потому, что в первых физических секторах жёсткого диска этого типа размещается особая область, содержащая загрузочный код и таблицу разделов. Эта область ещё именуется главной загрузочной записью, что на английском языке звучит как master boot record или сокращённо MBR.

Эта область диска не является ни одним из логических разделов, и она не доступна для просмотра средствами операционной системы. Загрузочный код передаёт управление компьютером системному разделу, а таблица разделов указывает, где именно начинается и заканчивается тот или иной логический раздел. Основной недостаток MBR заключается в том, что отводимая под него область диска является фиксированной , а это значит, что в него можно записать ограниченное количество информации. В свою очередь это становится следствием других ограничений, а именно:

На MBR-диске нельзя создать более четырёх логических Primary-разделов (ограничение условно снимается посредством создания extended-партиции) .
Каким бы объёмным ни был диск, пользователю будет доступно только 2 Терабайта .

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

Менее распространённой, но зато более новой и надёжной схемой является GPT или GUID Partition Table . Если посмотреть на схематическое изображение GPT-диска, то можно увидеть, что его структура очень похожа на структуру диска MBR, но это сходство весьма условное. Приходящаяся на нулевой сектор область называется Protection MBR , и назначение её несколько иное, чем обычной MBR. Служит она для защиты схемы GPT от перезаписи утилитами, которые не понимают GPT. Если такой утилите «показать» GPT-диск, то благодаря Protection MBR она определит его как MBR-диск, на котором отсутствует свободное пространство. Следовательно, перезаписать она его уже не сможет.

В будущем, когда MBR уйдёт в прошлое, возможно, в Protection MBR больше не будет надобности, ведь процесс загрузки с GPT-дисков в EFI происходит несколько иначе. Помимо области Protection MBR, на GPT-дисках имеется другая область, именуемая GUID Partition Entries Array . Это аналог Partition Table в MBR, содержащий список всех партиций на диске GPT. В отличие от MBR, он не имеет жёсткой фиксации, поэтому на GPT-диске можно создавать практически неограниченное количество логических разделов. Ограничения тут могут быть только на уровне операционной системы. Например, Windows не может работать с более чем с 128 партициями.

Другим важным отличием GPT-дисков является резервирование загрузочных данных и сведений о таблице разделов. Если в MBR-дисках они хранятся в одном месте - в первых физических секторах, то в дисках с разметкой GPT они могут храниться где-то ещё, но уже в виде копий. Если основные данные окажутся повреждены, механизм GPT восстановит их из бекапа. В MBR же это привело бы к невозможности загрузки компьютера или «потере» разделов, а вместе с ними и записанных данных.

И наконец, разметка GPT позволяет работать с дисками объёмом больше 2 Тб.

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

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

На самом деле, достаточно запомнить несколько простых вещей и держать эти сведения в голове при любых действиях с разделами жёсткого диска.

Что же такое раздел

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

Иногда бывает, что на винчестере имеется всего один раздел, занимающий весь жёсткий диск. Особенно часто это можно наблюдать у новичков, только что купивших компьютер. Такой вариант является самым простых, но и самым неудачным, т.к. и операционная система и ваши данные хранятся в одном месте, и при любых проблемах с операционкой, либо при переустановке ОСи вы рискуете потерять сразу всё.

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

Кроме того, разделение на несколько разделов позволит более удобно организовать хранение файлов - можно, например, выделить отдельный раздел под музыку или видео, если у вас их много; или если вы часто работаете с торрентами, можно выделить под них отдельный кусок жёсткого диска.

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

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

Начну по порядку.

Правило № 1

Всего на одном жёстком диске может быть не более 4-х основных разделов , меньше можно, больше - нет. Эти требования не зависят от какой-либо операционной системы - они продиктованы современным уровнем развития электронной начинки компьютера. И преодолеть их пока не удастся. Если же разделов требуется более 4-х, то тут вступает в силу другое правило.

Я не напрасно упомянул об ОСНОВНЫХ разделах - это не просто слово, оно обозначает один из двух типов разделов. Кроме основного, раздел может быть ещё и дополнительным (расширенным - extended). И в связи с этим правило о 4-х разделах несколько трансформируется - на одном жёстком диске может находиться до 4-х основных разделов, или до 3-х основных разделов плюс один дополнительный (расширенный раздел на диске может быть только один).

Что это нам дает? Дело в том, что дополнительный (расширенный) раздел, по сути, представляет из себя контейнер, внутри которого можно создавать НЕОГРАНИЧЕННОЕ количество логических дисков. И для пользователя не будет совершенно никакой разницы между работой с основным разделом и работой с логическим диском. Таким образом, путём создания расширенного раздела и логических дисков внутри него мы может разделить винчестер под свои нужды так, как нам потребуется.

Учтите, что если вы удалите расширенный раздел, все логические диски, входящие в него тоже исчезнут.

Правило № 2

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

Чаще всего активным становится первый раздел жёсткого диска (диск C :/ в Windows), но это не обязательное условие. Кроме того, всегда можно вручную переназначить активным любой другой основной раздел, но при этом не следует забывать переместить туда же загрузочные файлы, иначе операционная система не запустится.

Правило № 3

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

Файловые системы

Перед тем, как использовать раздел, его требуется отформатировать - создать на нём файловую систему (разметить особым образом).

Файловых систем сейчас существует довольно большое количество, и все имеют разные характеристики.

Операционные системы семейства Windows могут работать только с файловыми системами FAT, FAT32 и NTFS.

FAT является сильно устаревшей системой, и её применение сегодня вряд ли оправдано. FAT32 более современна, но имеет серьёзные ограничения. которые препятствуют её полноценному использованию. Например, максимальный размер файла, который поддерживает FAT32 - это около 4 ГБ. Именно поэтому, если Вы попытаетесь, например, скопировать образ полновесного ДВД-диска на флэшку (которые по дефолту форматируются в FAT32 ) Вы получите сообщение о нехватке свободного места, хотя на самом деле места там ещё полно. Из-за этого использование её на разделах, на которых происходит работа с видео, практически невозможна (и под раздел с торрентами её использовать проблематично ).

Лучшим выбором для работы под Windows сегодня будет файловая система NTFS . Она не имеет таких ограничений, как FAT32, обладает дополнительными возможностями по обеспечению безопасности, более стабильна и надёжна.

Для UNIX-ов, к которым относится и Linux, файловых систем существует гораздо больше. Каждая их них имеет свои достоинства и недостатки и более подходит под определённые задачи. По умолчанию в Linux используется ext4 , но можно использовать и любую другую. Информацию, какая из файловых систем Linux более всего подходит именно под Ваши задачи, Вы легко найдёте в Интернете.

Несколько слов о совместимости

Windows не понимает никаких других файловых систем, кроме своих собственных. Доступ из-под неё к разделам Linux возможен был только с помощью специальных программ или плагина к Total Commander. К сожалению, к самым современным файловым системам Linux плагин для Windows ещё не написан.

Linux же всегда прекрасно понимал FAT и FAT32, а в последние 2-3 года без проблем работает и с NTFS через специальный драйвер NTFS-3g , как на чтение, так и на запись. Плюс, поддерживает при этом бОльшую часть дополнительных возможностей NTFS. Так что из Linux Вы всегда будете иметь полноценный доступ к Windows разделам.

Следует упомянуть о различной бытовой технике - DVD-проигрывателях, спутниковых ресиверах и т.д. Вся эта техника может работать только с FAT и FAT32. NTFS, а тем более файловые системы UNIX-ов (за крайне редким исключением ) ей совершенно непонятны. Об этом следует помнить, если Вы обмениваетесь данными между подобной техникой и компьютером.

Инструменты для работы

Несколько слов об инструментарии для работы с разделами.

Начну с Windows. В её состав входит штатный инструмент Управление дисками . Добраться до него можно через Панель управления , либо щёлкнув правой кнопкой мыши на значке Мой компьтер => Управление и выбрав в левой колонке Управление дисками .

Обратите внимание, три раздела на скриншоте помечены как неизвестные разделы. Это разделы с Linux - Windows их видит, но ни определить, ни тем более работать с ними она не может.

Также в Управлении дисками достаточно чётко можно увидеть основные и дополнительный разделы, а также активный раздел (помечен как Система - на нём находятся загрузочные файлы; сама ОСь установлена в разделе, помеченном как - т.е. Windows меняет метки местами ). Из всех возможностей этот инструмент предоставляет только создание и удаление разделов, а также переназначение активного раздела и смену буквы дисков (в Vista и Windows 7 функционал незначительно увеличился ). Если ничего другого под руками не оказалось, то порой и этого бывает достаточно.

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

Поэтому я советую использовать его только в крайних случаях.

Гораздо бОльшими возможностями, удобством и безопасностью обладают различные программы из когорты Partition Magic -ов, например, . Таких программ имеется достаточно большое количество, все они разные и в последние годы многие из них поменяли владельцев-разработчиков и своё название. Поэтому, если Вы решили подобрать себе что-либо из них, Вам придётся озаботиться самостоятельным поиском на широких просторах Интернета. Это несложно, тем более, что лидеров в этой области можно по пальцам перечесть.

Acronis Disk Director Suite

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

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

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

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

Кроме того, при запуске Acronis Disk Director Suite предлагает на выбор два режима работы - автоматический, в котором все операции можно проводить с помощью "мастеров", и ручной режим, в котором вся полнота власти отдаётся на откуп пользователю. Второй режим, имхо, удобнее и гибче, но новички могут воспользоваться и автоматическим.

Также в программе присутствует полноценная и весьма подробная справка.

Следует упомянуть ещё об одной возможности - из окна программы можно создать и записать специальный загрузочный диск, который будет содержать файлы Acronis Disk Director Suite . Штука эта очень удобная и крайне полезная в хозяйстве - ведь имея этот диск, полностью отпадает надобность в установке самой программы и даже в наличии операционной системы. С этого диска можно загрузить компьютер и выполнить любые операции с разделами.

Теперь о неприятном. Заключается оно в том, что программа сравнительно редко обновляется, поэтому иногда возникают ситуации, когда с самыми современными жёсткими дисками она работать не может. Это в большей степени касается её варианта на загрузочном диске, т.к. если Acronis Disk Director Suite установить в операционную систему, то для работы с диском она будет использовать драйвера из комплекта Windows. Также у неё есть некоторые проблемы с файловыми системами Unix - самые современные файловые системы она не понимает (это можно заметить на представленном скриншоте ), хотя со старыми классическими работает "на ура".

На днях вышла новая версия Acronis Disk Director Suite для англоязычных пользователей (новой русской версии пока нет), которая уже без всяких проблемм работает с самыми новыми жёсткими дисками. А вот проблемы с современными файловыми системами Unix в ней пока ещё не решены.

GParted

Ещё один мощный и универсальный инструмент для работы с жёстким диском - это программа GParted из комплекта Linux.

Её можно найти практически на всех Live-CD с Linux.

Рассказ о возможностях программы можно уместить в одной фразе: "Может почти всё". Интерфейс прост и непритязателен, а работа абсолютно прозрачна и понятна. Все Ваши действия также сначала отображаются визуально, а выполняются лишь после нажатия специальной кнопки, когда Вы решите, что Вас всё устраивает.

Кроме того, GParted поддерживает гораздо большее количество файловых систем, включая самые современные.

Если у Вас несколько жёстких дисков, в окне программы единовременно будет показан только один. Для работы с другими воспользуйтесь раскрывающимся списком на панели (справа), в котором перечислены все подключенные винчестеры.

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

Несколько замечаний о программах, которые входят в инсталляторы операционных систем и могут применяться при установки ОСи.

При установке Windows все разделы жёсткого диска будут видны совершенно одинаковыми, без деления на основные и расширенный. Отличия будут только в метках и размерах, и можно крайне легко запутаться. Поэтому использовать его желательно только если Вы впервые ставите операционку на новый жёсткий диск. Если же Ваш диск уже использовался, и на нём есть какая-либо информация, лучше всего позаботиться обо всём заранее в сторонней программе, а действия в инсталляторе свести лишь к выбору нужного раздела и форматированию (при необходимости).

Аналогичная ситуация и при установке Linux. Хотя там всё определяется верно, но отображено не слишком наглядно, и работа происходит менее прозрачно, чем в том же GParted .

Так что лучше всего перед установкой создать разделы нужного размера в нужном месте и отформатировать их в любую файловую систему Linux, а при установке ОСи, проигнорировав предложенные автоматические варианты и выбрав ручное разбиение, просто примонтировать их в нужные места и сменить при необходимости файловую систему на другую, простым проставлением "галочки" в графе Форматировать напротив своих разделов.

Для большей наглядности рекомендую тщательно изучить скриншоты к статье (скриншоты кликабельны - при щелчке на них в отдельных вкладках будут открываться полноразмерные картинки ). Обращаю внимание, что везде изображён ОДИН И ТОТ ЖЕ жёсткий диск, только в разных программах. На этом диске параллельно установлены две операционные системы в режиме мультизагрузки - Windows и Linux, которые вполне мирно уживаются на одном компьютере. Каждой из операционок выделено по 3 раздела (разделение не идеальное, но вполне приемлемое ). Внимательно просмотрите, что и как выглядит в каждой из программ.