Nodevice.su
[AD970x90]
ГлавнаяСтатьиУстройства хранения информацииНемного о физической организации HDD
Поиск по сайту:
пример: "ASUS dvd"









Фильтр файлов
Производитель:
Устройство:
Архив новостей:
« 03.2024
Пн Вт Ср Чт Пт Сб Вс
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Последние новости

Наша кнопка


Размести на своем сайте HTML код с нашей кнопкой.

Статья "Немного о физической организации HDD"

[AD1]

Немного о физической организации HDD

 

Жесткий диск состоит из нескольких металлических пластин, головок чтения-записи и механизма их позиционирования, помещенных в герметичную коробку (банку). К нему прикреплена печатная плата с контроллером и буферной памятью (кэшем), которая посредством шлейфа (40 или 80 жил) соединяется с материнской платой или отдельным контроллером. Так вот, металлические пластины условно разбиты на концентрические дорожки, а дорожки разделены на секторы. Дорожки на равном расстоянии от центра на всех поверхностях пластин объединяются в цилиндры. Таким образом, для чтения определенного сектора данных (его емкость принята равной 512 байт) нужно: 1) отвести головки на нужное расстояние от центра, то есть позиционировать на определенный цилиндр; 2) начать просмотр дорожки на нужной пластине, активировав соответствующую головку; 3) производить чтение всей информации до появления заголовка сектора, номер которого (содержится в этом заголовке) совпадает с нужным нам для операции чтения или записи. В соответствии с такой схемой метод нахождения необходимой информации на жестком диске называется CHS-адресацией (Cylinder-Head-Sector).

BIOS (базовая система ввода-вывода) является набором системных подпрограмм (функций), среди которых есть и программа чтения-записи данных на жестком диске. Для получения содержимого одного сектора требуется указать его CHS-адрес. Число секторов, цилиндров и головок BIOS\'у должно быть известно, для этого и существует автодетект в Setup. Впрочем, информация о геометрии, используемая для работы функций доступа к диску, даже близко не соответствует реальной геометрии современного жесткого диска. У него 1-3 пластины, одна из которых может использоваться только с одной стороны, и 1-6 головок. Поэтому контроллер жесткого диска производит трансляцию поступающих адресов, такую же трансляцию производит и BIOS, работая по механизму LBA (Logical Block Addressing). Но это уже другая история.

В соответствии с идеологией MS-DOS жесткий диск может состоять из так называемых \"разделов\" - независимых областей диска, которые могут быть построены по схеме любой операционной системы, то есть использовать любую файловую систему. Таких разделов должно быть два - основной (Primary), с которого обычно осуществляется загрузка, и расширенный (Extended), который может быть разделен на несколько частей-подразделов (логических дисков). Таким образом, первый раздел диска самостоятелен, остальные объединяются в группу. Каждый раздел имеет принадлежность к той или иной файловой системе.

В рамках DOS (и основанных на этой же операционной системе Windows3.x/95/98/ME) существуют три файловых системы - FAT12, FAT16 и FAT32. Об их отличиях я упомяну ниже.


Системные секторы

Самый первый сектор любого жесткого диска имеет название Master Boot Record, MBR. Он состоит из двух частей - программы начального загрузчика и таблицы разделов (Disk Partition Table, DPT). DPT состоит из четырех записей, обозначающих адрес начала раздела, его размер в секторах, адрес конца и тип файловой системы. Конечно, используются только две записи - для основного и расширенного раздела, потому что каждый подраздел (логический диск) имеет такую же DPT с указанием адреса следующего подраздела. Задача загрузчика в MBR - дать возможность загрузки с нужного раздела (т.е. использовать несколько операционных систем). Стандартный загрузчик DOS предоставляет весьма ограниченный механизм выбора - загрузка возможна с того раздела, у которого установлен флаг активности таблице DPT.

Самый первый сектор раздела называется Boot Sector. В его составе также есть загрузочная программа и таблица BIOS Parameter Block, BPB. В этой таблице содержится информация о местонахождении и размере другой важной области - таблицы размещения файлов, FAT. По своей сути FAT - это большой массив элементов, каждый элемент соответствует каждому кластеру. Кластер - блок секторов (от 8 до 128), элемент распределения всего дискового пространства раздела. Каждому файлу при его создании выделяется нужное число кластеров. Номер первого кластера заносится в каталог (директорий, папку), а соответствующий этому кластеру элемент FAT содержит номер второго кластера. Элемент FAT, соответствующий второму кластеру, содержит номер третьего кластера и т.д. Весь FAT состоит из таких цепочек (Chains).

Если элемент FAT не связан ни в одну цепочку и при этом не равен 0, он называется \"потерянным\" (Lost Cluster). \"Потеря\" кластеров происходит при перезагрузке в момент записи цепочки в FAT, например, при создании/изменении файла, когда операция записи прерывается. Конечно, это не самые страшные последствия неожиданной перезагрузки, но все же терять место на диске не очень хочется. Программисты из Microsoft хорошо знали о \"стабильности\" своей Windows, поэтому и запускается Scandisk автоматически.

Если файл впоследствии увеличивается в размерах, ему назначаются новые кластеры из числа свободных, причем чаще всего они находятся в другом месте диска. Цепочка \"перепрыгивает\" другие цепочки - вот вам и фрагментация, которую устраняют программы-дефрагментаторы, переносящие файлы так, чтобы их кластеры шли друг за другом по порядку.

Хотя система цепочек и является достаточно эффективной и простой, у нее есть недостатки. Во-первых, низкая надежность - при исчезновении одного элемента весь файл будет нечитаемым, а порча FAT означает потерю большого количества (если не всех) файлов. Для устранения этого недостатка существуют две одинаковых копии FAT. Второе - если размер файла не кратен размеру кластера, образуется слек (Slack) - часть кластера, не занятая полезной информацией. Чем больше размер кластера, тем большая часть диска занята слеком. Для файла длиной 1 байт вы теряете весь кластер, а если он имеет большой размер (32 Кбайта, например), то потери на слек могут составлять 30-50% от общей емкости диска (кстати, проверить их можно программой Sandra - модуль Drive Information).

Размер элемента FAT дает название самой файловой системе. FAT12 имеет 12-битные элементы, которые позволяют организовать на диске около 4-х тысяч кластеров. FAT16 имеет 16-битные элементы, число кластеров - 65530. FAT32 - 32-битные элементы, около 4 млрд. кластеров. Чем больше на диске будет кластеров, тем меньше можно сделать размер самого кластера и тем самым меньше потерять места. Поэтому FAT12 используется только для гибких дисков, FAT16 - для дисков емкостью до 500 Мб (в принципе, можно и до 2 Гб).



Автор статьи:
Обсудить статью на форуме Версия для печати

Комментарии к статье:

К данной статье комментарии пока что отсутствуют.
Добавить комментарий
Ваше имя:
Ваш e-mail:
Введите код:
Ваше сообщение:
После модерации Ваш комментарий в течение двух дней будет добавлен на сайт

Статьи категории Устройства хранения информации

Cтраницы: Следущая 1 2 3 4 5 6 7 8 9 10 Следущая Последняя
Новые драйвера Топ DLL-файлов Топ мануалов Популярные запросы
Драйвер Intex IT-305WC Windows XP, 2000, 98, ME DLL-файл binkw32.dll Panasonic KX-TC 1481, 1484, 1486 acer travelMate 8572G
Драйвер Lapara LA-1300k-x5 Windows 7 DLL-файл xinput1_3.dll Pioneer DEH-P3600MP Samsung SyncMaster SA350
Драйвер Lexmark X1290 Windows XP, 2000, 2003 DLL-файл Mss32.dll Becker AUDIO 10 ECE TYP 6021 intel GMA 4500M
Драйвер HP ENVY m4 series Intel Management Engine Interface (MEI) Windows 8 64-bit DLL-файл OpenAL32.dll SONY XR-3750 acer 5732z
Драйвер HP ENVY m4 series IDT High-Definition (HD) Audio Driver Windows 8 64-bit DLL-файл MSCOMCTL.OCX Panasonic KX-TC 1401, 1405 aspire 5110
Драйвер HP ENVY m4 series IDT High-Definition (HD) Audio Driver Windows 8 64-bit DLL-файл KERNEL32.DLL Panasonic KX-TC 1503 5110
Драйвер HP ENVY dv7 series 3D DriveGuard Windows 8 64-bit DLL-файл msvcr71.dll Pioneer DEH-P4650MP Toshiba L40
Драйвер HP ENVY dv7 series Intel Rapid Storage Technology Driver Windows 8 64-bit DLL-файл COMDLG32.OCX Dialon F10 toshiba l40-170
Драйвер HP ENVY dv7 series Realtek Card Reader Driver Windows 8 64-bit DLL-файл binkw32.dll Pioneer DEH-P3630MP gs-9200
Драйвер HP ENVY dv7 series Ralink Bluetooth Software Driver Windows 8 64-bit DLL-файл d3dx9_30.dll APC BACK-UPS - 600 spk 33
Драйвер HP ENVY dv7 series Realtek Local Area Network (LAN) Driver Windows 8 64-bit DLL-файл storm.dll Sony DCR-DVD105E 22m38a
Драйвер HP ENVY dv7 series Intel Bluetooth Driver Windows 8 64-bit DLL-файл openal32.dll SONY CDX-F5500X pi:pow202325
Драйвер HP ENVY dv7 series Qualcomm Atheros AR9000 Series Wireless LAN Driver Windows 8 64-bit DLL-файл msvcp71.dll APC SMART-UPS V/S - 1000 pow202325
Драйвер HP ENVY dv7 series Ralink 802.11 Wireless LAN Adapter Windows 8 64-bit DLL-файл lame_enc.dll Pioneer DEH-4050 драйвера для rovermedia tv card series 4-in-1
Драйвер HP ENVY dv7 series Ralink Bluetooth Software Driver Windows 8 64-bit DLL-файл COMCTL32.OCX Scher-Khan Magicar 5 optiarc dvd rw ad-7280