Kernel Log: Linux и диски с 4Кб-секторами

Обсуждение новостей, соответствующих тематике форума

Модератор: Модераторы разделов

Аватара пользователя
vr13
Сообщения: 874
ОС: gentoo

Kernel Log: Linux и диски с 4Кб-секторами

Сообщение vr13 »

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

Разработчик компании Red Hat Karel Zak выпустил пакет утилит, имeющийся во многих дистрибутивах Linux -- util-linux-ng версии 2.17.1, где среди прочих имеется известная всем fdisk. Запущенная с опцией -u, утилита будет выполнять мегабайтное выравнивание размеров разделов диска, как это сделано в windows современных версий. Несмотря на кажущуюся незначительность изменения алгоритма работы утилиты, это прежде всего касается появляющихся на рынке жестких дисков большого размера с 4Кб-секторами, которые фактически имитируют традиционную и не меняющуюся последние 20 лет структуру дисков с 512-байтными секторами.

Для файловых системы Linux предпочтительны как раз 4Кбайтные дисковые операции, однако старые версии fdisk формировали первый раздел дисков начиная с 63го 512-байтного сектора, который попадает ровно на половину 4Кбайтного физического сектора диска. Запись 4Кбайтов данных в начало дискового раздела, соответственно, выглядит как считывание двух физических 4Кбайтных секторов, корректное распределение в них данных, и обратная запись этих секторов на диск. Это приводит к тому, что диски с 4Кбайтными физическими секторами (а также некоторые дисковые RAID-системы) работают менее эффективно, чем практически возможно, если бы разделы начинались с физического 512-байтного сектора, номер которого кратен 8. Статья на lwn.net описывает проблему более подробно. Примером "нового" диска может служить Western Digital's WD10EARS - один из первых "бытовых" SATA дисков, существующих на рынке, внутренняя архитектура которого является 4Кбайтной.

Совсем недавно на Slashdot с новой силой продолжено обсуждение статьи из OS News о том, что "Linux не достаточно подготовлен к работе с 4096-байтными секторами". Как обычно, корректность такого заявления существенно зависит от того, что считать Linux - только ядро или все вместе. Что касается ядра, и поддержки ядром программ, работающих на пользовательском уровне, то все, что касается оптимального разбиения дисков на разделы, поддерживается начиная с I/O topology patches в ядре 2.6.31.

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

Кроме подержки выравнивания разделов диска на мегабайтную границу, в fdisk из util-linux-ng версии 2.17.1 появилась опция -c, отключающая совместимость с DOS. В режиме DOS требовалось выравнивание разделов по границам цилиндров - до введения нового режима адресации дисков LBA (logical block address - логический адрес блока, что снимает ограничение на размер диска: режим DOS поддерживает адресацию CHS - cylinder/head/sector - цилиндр/головка/сектор, который такое ограничение имеет). Хотя режим адресации уже DOS объявлен старым, выпущенная версия fdisk его все еще поддерживает для совместимости со старыми дисками и, для использования новой адресации, опции -u и -с следует указывать явно, как говорилось в начале заметки.

по материалам: H-Online
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение sash-kan »

vr13 писал(а):
25.02.2010 22:38
Запись 4Кбайтов данных в начало дискового раздела, соответственно, выглядит как считывание двух физических 4Кбайтных секторов, корректное распределение в них данных, и обратная запись этих секторов на диск. Это приводит к тому, что диски с 4Кбайтными физическими секторами (а также некоторые дисковые RAID-системы) работают менее эффективно, чем практически возможно, если бы разделы начинались с физического 512-байтного сектора, номер которого кратен 8.
неужели запись в начало раздела — частая операция?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение rm_ »

sash-kan
На неправильно сдвинутом разделе, запись в любое место происходит по указанной схеме.
http://www.fcenter.ru/online.shtml?article...dware/hdd/28121
Спасибо сказали:
stigger
Сообщения: 154
ОС: CentOS 5.4

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение stigger »

а как обстоят дела со старыми ядрами? у меня вот centos 5 на 2.6.18, там не стоит даже пробовать такое втыкать или как?
Спасибо сказали:
Ramol
Сообщения: 44
ОС: Debian

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение Ramol »

С 4Кб-секторами есть еще проблемы с производительностью http://bugs.gentoo.org/show_bug.cgi?id=304727
Спасибо сказали:
stigger
Сообщения: 154
ОС: CentOS 5.4

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение stigger »

это не проблемы с производительностью. если диск по уму разбить то всё будет нормально.
Спасибо сказали:
Ramol
Сообщения: 44
ОС: Debian

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение Ramol »

stigger писал(а):
21.03.2010 14:51
это не проблемы с производительностью. если диск по уму разбить то всё будет нормально.

Да согласен надо по уму разбить, а можно узнать как если fdisk не умел? Ну вот научили fdisk делать выравнивание надо попробывать как он выравнивает и зделать тесты еще раз и посмотреть какие результаты будут.
P.S
А кроме fdisk кто еще умеет такое делать?
Спасибо сказали:
stigger
Сообщения: 154
ОС: CentOS 5.4

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение stigger »

parted говорят уже два года такое умеет.
Спасибо сказали:
Ramol
Сообщения: 44
ОС: Debian

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение Ramol »

stigger писал(а):
21.03.2010 15:42
parted говорят уже два года такое умеет.

Спасибо буду знать. Но есть одно но WARNING: USING PARTED TO PERFORM FILE SYSTEM OPERATIONS IS DEPRECATED
Спасибо сказали:
stigger
Сообщения: 154
ОС: CentOS 5.4

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение stigger »

там совсем другое написано. там написано что для форматирования и изменения разделов надо юзать соответствующие утилиты (такие как e2fsprogs), а не использовать для этого parted.
Спасибо сказали:
yaleks
Сообщения: 2121
Статус: вне статуса
ОС: Gentoo ~

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение yaleks »

Ramol писал(а):
21.03.2010 14:38
С 4Кб-секторами есть еще проблемы с производительностью http://bugs.gentoo.org/show_bug.cgi?id=304727

как раз наоборот, что там и написано ;)
Спасибо сказали:
Ramol
Сообщения: 44
ОС: Debian

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение Ramol »

yaleks писал(а):
21.03.2010 16:04
Ramol писал(а):
21.03.2010 14:38
С 4Кб-секторами есть еще проблемы с производительностью http://bugs.gentoo.org/show_bug.cgi?id=304727

как раз наоборот, что там и написано ;)

А можно узнать в какой имено строке написано такое, а то я не нашол :)
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение sash-kan »

rm_ писал(а):
01.03.2010 08:03
sash-kan
На неправильно сдвинутом разделе, запись в любое место происходит по указанной схеме.
http://www.fcenter.ru/online.shtml?article...dware/hdd/28121
прошу прощения, статья длинная. какое именно место читать?
видимо, вот этот раздел?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
stigger
Сообщения: 154
ОС: CentOS 5.4

Re: Kernel Log: Linux и диски с 4Кб-секторами

Сообщение stigger »

sash-kan писал(а):
21.03.2010 17:29
rm_ писал(а):
01.03.2010 08:03
sash-kan
На неправильно сдвинутом разделе, запись в любое место происходит по указанной схеме.
http://www.fcenter.ru/online.shtml?article...dware/hdd/28121
прошу прощения, статья длинная. какое именно место читать?
видимо, вот этот раздел?


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

теперь сдвиньте начало файловой системы например на 512 байт. теперь диску для записи одного кусочка ФС придётся затронуть два куска диска. аналогично с чтением — считывать придётся два сектора. и так по всей файловой системе.
Спасибо сказали: