Урок #2. Принцип хранения информации

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

Давайте разберемся и с этим вопросом.

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

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

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

Разметка диска

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

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

Подобная базовая разметка делается при изготовлении диска на заводе с использованием специального оборудования и называется низкоуровневым форматированием.

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

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

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

Раз уж мы заговорили о форматировании, то не будет лишним пояснить еще и этот термин.

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

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

По сути форматирования есть два — низкоуровневое и высокоуровневое.

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

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

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

Операционных систем существует множество и файловых систем, соответственно, тоже. Но наиболее популярных файловых систем не так уж и много. Для операционных систем семейства Windows — это файловые системы NTFS и FAT.

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

Кластер жесткого диска

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

Чтобы проиллюстрировать вышесказанное приведу картинку из Википедии:

Сектора и кластеры жесткого диска

На этом рисунке замечательным образом продемонстрирована структура диска. Буквой «А» обозначена дорожка, буквой «В» — геометрический сектор диска, а буквой «С» — сектор дорожки. Далее из рисунка видно, что кластер «D» может занимать несколько секторов дорожки (кластер выделен на рисунке зеленым).

В различных файловых системах кластер мог иметь размеры от 512 байт (один сектор) до 64 кбайт (128 секторов). В наиболее популярной в настоящее время файловой системе NTFS размер кластера можно установить от 512 байт, до 4096 байт (8 секторов).

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

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

Таблица файловой системы

Каждая ячейка имеет некоторый объем, заданный при форматировании, то есть при создании файловой системы. Например, 512 байт. Если мы записываем на диск файл размером 2 килобайта, то он займет четыре ячейки. Но не обязательно эти ячейки будут рядом и файл вполне может быть как бы «размазан» по диску.

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

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

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

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

Шахматная доска

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

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

Что же может привести к подобным проблемам?

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

Ну и во-вторых, повреждение диска. И об этом я расскажу в следующем видео.