Эмуляция 512 байт предназначена для совместимости со старыми системами. Однако запись, включающая только часть физического сектора 4K, может привести к снижению производительности, поскольку сектор должен быть прочитан и изменен до того, как он действительно будет записан.
Когда устаревшая операционная система пытается выполнить запись на диск расширенного формата, могут возникнуть проблемы с производительностью, поскольку записанные логические сектора могут не совпадать с физическими секторами.
- Когда считывается только часть физического сектора 4K, данные просто считываются с физического сектора, и производительность не снижается. Однако когда система пытается выполнить запись в часть физического сектора (например, эмулируемый 512-байтовый сектор, а не весь физический сектор), жесткий диск должен прочитать весь физический сектор, изменить измененную часть во внутреннем жестком диске. память, и запишите его обратно на тарелки. Это называется чтение-изменение-запись ( RMW ), операция, которая требует дополнительного вращения диска и, следовательно, снижает производительность. Seagate объясняет это следующим образом :
[...] жесткий диск должен сначала прочитать весь сектор 4K, содержащий целевое местоположение запроса записи хоста, объединить существующие данные с новыми данными, а затем переписать весь сектор 4K:
В этом случае жесткий диск должен выполнить дополнительные механические действия в форме чтения сектора 4K, изменения содержимого и последующей записи данных. Этот процесс называется циклом чтения-изменения-записи, который нежелателен, поскольку отрицательно влияет на производительность жесткого диска.
Дисковые разделы, которые не выровнены по границе 4K, также могут привести к снижению производительности.
Традиционно первый раздел на жестком диске начинается в секторе 63. Windows XP и более старые операционные системы делят диски таким образом. Более новые версии Windows будут создавать разделы на границе 1 МБ, обеспечивая правильное выравнивание по физическим секторам. Это называется выравниванием 0 .
- Этот нечетный номер является артефактом адресации сектора головки цилиндров (CHS), который используется в INT 13h, устаревшем API BIOS, используемом для доступа к диску. В устаревших системах и загрузчиках, использующих API INT 13h, все разделы должны начинаться и заканчиваться на границах цилиндров. Даже после введения логической блочной адресации (LBA) поддельные значения CHS (которые не соответствовали фактической геометрии диска) использовались для поддержания совместимости с устаревшим API. Поскольку адресация CHS изначально поддерживала максимум 63 сектора на цилиндр, первый раздел начинался бы с сектора 63. Windows XP (до Service Pack 3) и более ранние версии Windows не будут загружаться, если системный том не находится на границе цилиндра .
Поскольку LBA 63 не кратно 8 (восемь устаревших 512-байтовых секторов вписываются в сектор 4K), диск расширенного формата, который отформатирован старым способом, будет иметь кластеры (наименьшая единица выделения данных файловой системы, обычно размером 4K) ), которые не выровнены по физическим секторам на диске 4K, условие называется выравниванием 1 . В результате операция ввода-вывода, которая в противном случае включает 4 КБ данных, теперь охватывает два сектора, что приводит к операции чтения-изменения-записи, которая снижает производительность.
Хотя информация о размере физического сектора не требуется, если ОС всегда записывает данные на границе 4 КБ, эта информация может по-прежнему требоваться приложениям, которые выполняют низкоуровневый ввод-вывод.
- Когда накопитель сообщает, что размер его физического сектора равен 4 КБ, ОС или приложение могут сказать, что это накопитель расширенного формата, и поэтому должны избегать операций ввода-вывода, которые не охватывают полные физические сектора. Диск, который сообщает 512-байтовые собственные сектора, не накладывает это ограничение. В то время как более новые операционные системы обычно пытаются читать или записывать данные в единицах 4K, когда это возможно (делая эту информацию неактуальной), приложениям, которые выполняют низкоуровневый ввод-вывод, может потребоваться знать размер физического сектора, чтобы они могли соответствующим образом корректироваться и избегать неправильного выравнивания или записи с частичным сектором, которые вызывают медленные циклы RMW.
Ваш SSD позволяет изменять размер физического сектора, о котором сообщается, потому что это необходимо для совместимости с определенными массивами хранения.
Центры обработки данных часто имеют массивы хранения, состоящие из устаревших дисков 512n. Диски 4K, даже те, которые эмулируют 512-байтовые сектора, могут быть несовместимы с такими массивами, поэтому эта функция необходима для обеспечения совместимости. Смотрите эту ветку форума :
Мы не можем просто вставить 4K диск в массив, отформатированный с 512b дисками. Многие массивы (особенно хранилище на основе ZFS, которое становится все более популярным, поскольку программно-определяемое хранилище порождает волны) не принимают заменяющий диск с другим форматом физического сектора.
Обратите внимание, что лучшая производительность будет достигнута в современных системах, если диск настроен на использование секторов 4K.