Advanced Format — это новый формат разметки жестких дисков, необходимый для адресации больших объемов дисковой памяти. Все производители современных жестких дисков, в том числе HGST, переходят на этот формат.
Одна из основных особенностей Advanced Format — увеличение размера сектора с 512 до 4096 байт. Для сохранения совместимости с программами, рассчитанными на прежний формат, новые диски имеют режим эмуляции, который называется «512e».
Большая часть современных операционных систем поддерживает Advanced Format. Для достижения оптимального быстродействия ввода-вывода необходимо, чтобы разбивка диска была осуществлена корректно, и чтобы данные записывались 4-килобайтными блоками как операционной системой, так и прикладными программами. Новейшие операционные системы по умолчанию выполняют все условия, необходимые для эффективной работы с Advanced Format. При использовании же более старого программного обеспечения для настройки дисковой подсистемы на оптимальное быстродействие могут потребоваться специальные утилиты.
Устройство Advanced Format
В средней части рисунка 1 изображены восемь идущие подряд 512-байтных секторов. Помимо пользовательских данных, каждый сектор содержит служебную информацию: данные разметки и код коррекции ошибок. При замене восьми 512-байтных секторов одним 4-килобайтным количество необходимой служебной информации сокращается (см. нижнюю часть рисунка). Таким образом, при работе с большими файлами (а средний размер файлов по сравнению со временами, когда использовался 512-байтный формат, вырос) дисковое пространство используется эффективнее. Кроме того, под код коррекции ошибок выделено больше места, благодаря чему лучше обеспечивается целостность данных.
Рис. 1. Сравнение 512-байтного и 4-килобайтного форматов(1).
Обеспечение совместимости
Значительная часть находящихся в эксплуатации технических и программных средств рассчитаны на размер сектора 512 байт и ожидают, что данные будут пересылаться 512-байтными блоками. Эмуляция такого обмена реализована в новых дисках на уровне интерфейса. При запросе на чтение блока диск считывает сектор целиком (на что не уходит много времени) и передает программе только необходимый блок. Если же от программы поступает запрос на запись блока, то диск считывает целый сектор, помещает в него полученный блок и перезаписывает сектор целиком (см. рис. 2). Между считыванием и записью проходит время, диск может за это время совершить несколько оборотов.
Рис. 2. В режиме эмуляции при записи 512-байтного блока диск вначале считывает сектор, помещает в него блок и затем записывает сектор
Обеспечение быстродействия
Для достижения наивысшего быстродействия необходимо, чтобы формат записи на диск соответствовал формату диска. В идеальном случае запись должна выполняться 4-килобайтными блоками и каждый блок должен записываться в один сектор. Это условие выполняется в том случае, если и операционная система, и прикладные программы настроены на работу с 4-килобайтными блоками, а разбиение диска выполнено корректно.
Большинство современных операционных систем используют файловые системы, в которых дисковое пространство выделяется 4-килобайтными блоками, или кластерами. 4-килобайтный блок соответствует восьми 512-байтным секторам (см. рис. 3).
Рис. 3. Соответствие кластера сектору в режиме эмуляции.
Выравнивание границ разделов
При использовании операционных систем, записывающих данные 4-килобайтными кластерами (большинство современных ОС), важно, чтобы их границы были выровнены по границам секторов диска. В режиме эмуляции 512e диск не может предотвратить размещение раздела с блока, номер которого не кратен восьми. Если такое произойдет, один кластер будет размещаться в двух секторах (см. рис. 4). Таким образом, при чтении или записи 4-килобайтного кластера потребуется соответственно считать или записать 8 килобайт — вдвое больше. И если при чтении разница в скорости будет не большая, то при записи она окажется заметной.
Рис. 4. Размещение кластера не с начала сектора.
Операционные системы, поддерживающие Advanced Format
В следующих операционных системах размер кластера составляет 4 Кбайт, а при установке разбиение диска выполняется корректно:
• Microsoft Windows Vista SP1 и новее;
• Microsoft Windows 7;
• Microsoft Server 2008;
• Mac OS X 10.4 и новее;
• Linux Ubuntu 8.04+, SUSE, Linux kernel 2.6.34+ (необходимо использовать Linux Partitioning Utility).
Операционные системы, не обеспечивающие автоматическое соответствие кластеров секторам:
• Microsoft Windows XP;
• Microsoft Server 2003;
• Microsoft Windows Home Server V1.
HGST Align Tool
Для исправления логической разметки дисков, разделы на которых не выровнены по границам секторов, можно использовать выпускаемую HGST утилиту для Windows. Ее можно загрузить по адресу www.hgst.com/support/downloads.
Кроме того, Advanced Format поддерживается рядом утилит работы с дисками, выпускаемых сторонними производителями:
Средства разбиения дисков
Для Linux:
GPARTED 2.1+ (с опциями -a optimal или -a minimal).
www.gnu.org/software/parted/manual/parted.html
Для Windows:
Acronis Disk Director Home 11 или Paragon Partition Manager 11.
Для Mac:
Disk Utility (в комплекте с Mac OS X 10.4+), создает раздел GPT (GUID Partition Table).
Дополнительные сведения:
www.idema.org (документы по Advanced Format, в том числе спецификации)
en.wikipedia.org/wiki/Advanced_Format
www.t13.org, документ: ATA8-ACS (ATA Command Set)
www.t10.org, документ: SBC-3 (SCSI Block Commands)
Microsoft Windows 7 and Advanced Format Hotfix (KB981208):
support.microsoft.com/kb/982018
Intel Rapid Storage Technology (RST): www.intel.com/support/chipsets/imsm/sb/CS-031502.htm
(1) Здесь и далее рисунки взяты из «Hitachi Advanced Format Technology Brief» — www.hgst.com/tech/techlib.nsf/techdocs/3D2E8D174ACEA749882577AE006F3F05$file/AFtechbrief.pdf
Одна из основных особенностей Advanced Format — увеличение размера сектора с 512 до 4096 байт. Для сохранения совместимости с программами, рассчитанными на прежний формат, новые диски имеют режим эмуляции, который называется «512e».
Большая часть современных операционных систем поддерживает Advanced Format. Для достижения оптимального быстродействия ввода-вывода необходимо, чтобы разбивка диска была осуществлена корректно, и чтобы данные записывались 4-килобайтными блоками как операционной системой, так и прикладными программами. Новейшие операционные системы по умолчанию выполняют все условия, необходимые для эффективной работы с Advanced Format. При использовании же более старого программного обеспечения для настройки дисковой подсистемы на оптимальное быстродействие могут потребоваться специальные утилиты.
Устройство Advanced Format
В средней части рисунка 1 изображены восемь идущие подряд 512-байтных секторов. Помимо пользовательских данных, каждый сектор содержит служебную информацию: данные разметки и код коррекции ошибок. При замене восьми 512-байтных секторов одним 4-килобайтным количество необходимой служебной информации сокращается (см. нижнюю часть рисунка). Таким образом, при работе с большими файлами (а средний размер файлов по сравнению со временами, когда использовался 512-байтный формат, вырос) дисковое пространство используется эффективнее. Кроме того, под код коррекции ошибок выделено больше места, благодаря чему лучше обеспечивается целостность данных.
Рис. 1. Сравнение 512-байтного и 4-килобайтного форматов(1).
Обеспечение совместимости
Значительная часть находящихся в эксплуатации технических и программных средств рассчитаны на размер сектора 512 байт и ожидают, что данные будут пересылаться 512-байтными блоками. Эмуляция такого обмена реализована в новых дисках на уровне интерфейса. При запросе на чтение блока диск считывает сектор целиком (на что не уходит много времени) и передает программе только необходимый блок. Если же от программы поступает запрос на запись блока, то диск считывает целый сектор, помещает в него полученный блок и перезаписывает сектор целиком (см. рис. 2). Между считыванием и записью проходит время, диск может за это время совершить несколько оборотов.
Рис. 2. В режиме эмуляции при записи 512-байтного блока диск вначале считывает сектор, помещает в него блок и затем записывает сектор
Обеспечение быстродействия
Для достижения наивысшего быстродействия необходимо, чтобы формат записи на диск соответствовал формату диска. В идеальном случае запись должна выполняться 4-килобайтными блоками и каждый блок должен записываться в один сектор. Это условие выполняется в том случае, если и операционная система, и прикладные программы настроены на работу с 4-килобайтными блоками, а разбиение диска выполнено корректно.
Большинство современных операционных систем используют файловые системы, в которых дисковое пространство выделяется 4-килобайтными блоками, или кластерами. 4-килобайтный блок соответствует восьми 512-байтным секторам (см. рис. 3).
Рис. 3. Соответствие кластера сектору в режиме эмуляции.
Выравнивание границ разделов
При использовании операционных систем, записывающих данные 4-килобайтными кластерами (большинство современных ОС), важно, чтобы их границы были выровнены по границам секторов диска. В режиме эмуляции 512e диск не может предотвратить размещение раздела с блока, номер которого не кратен восьми. Если такое произойдет, один кластер будет размещаться в двух секторах (см. рис. 4). Таким образом, при чтении или записи 4-килобайтного кластера потребуется соответственно считать или записать 8 килобайт — вдвое больше. И если при чтении разница в скорости будет не большая, то при записи она окажется заметной.
Рис. 4. Размещение кластера не с начала сектора.
Операционные системы, поддерживающие Advanced Format
В следующих операционных системах размер кластера составляет 4 Кбайт, а при установке разбиение диска выполняется корректно:
• Microsoft Windows Vista SP1 и новее;
• Microsoft Windows 7;
• Microsoft Server 2008;
• Mac OS X 10.4 и новее;
• Linux Ubuntu 8.04+, SUSE, Linux kernel 2.6.34+ (необходимо использовать Linux Partitioning Utility).
Операционные системы, не обеспечивающие автоматическое соответствие кластеров секторам:
• Microsoft Windows XP;
• Microsoft Server 2003;
• Microsoft Windows Home Server V1.
HGST Align Tool
Для исправления логической разметки дисков, разделы на которых не выровнены по границам секторов, можно использовать выпускаемую HGST утилиту для Windows. Ее можно загрузить по адресу www.hgst.com/support/downloads.
Кроме того, Advanced Format поддерживается рядом утилит работы с дисками, выпускаемых сторонними производителями:
Средства разбиения дисков
Для Linux:
GPARTED 2.1+ (с опциями -a optimal или -a minimal).
www.gnu.org/software/parted/manual/parted.html
Для Windows:
Acronis Disk Director Home 11 или Paragon Partition Manager 11.
Для Mac:
Disk Utility (в комплекте с Mac OS X 10.4+), создает раздел GPT (GUID Partition Table).
Дополнительные сведения:
www.idema.org (документы по Advanced Format, в том числе спецификации)
en.wikipedia.org/wiki/Advanced_Format
www.t13.org, документ: ATA8-ACS (ATA Command Set)
www.t10.org, документ: SBC-3 (SCSI Block Commands)
Microsoft Windows 7 and Advanced Format Hotfix (KB981208):
support.microsoft.com/kb/982018
Intel Rapid Storage Technology (RST): www.intel.com/support/chipsets/imsm/sb/CS-031502.htm
(1) Здесь и далее рисунки взяты из «Hitachi Advanced Format Technology Brief» — www.hgst.com/tech/techlib.nsf/techdocs/3D2E8D174ACEA749882577AE006F3F05$file/AFtechbrief.pdf