HDD: проблема 137 Гб и LBA 48


В процессе развития компьютерных систем росла не только их вычислительная мощность, отождествляемая обычным пользователем с мегагерцами центрального процессора, что не совсем верно, а точнее совсем не верно, но и увеличивался объем накопителей информации — постоянных запоминающих устройств, прошедших путь от перфокарт и магнитных лент до накопителей на жестких магнитных дисках (НЖМД), называемых в обиходе жесткими дисками или винчестерами. Данный тип накопителей прошел большой путь эволюции как с точки зрения физических размеров, так и с точки зрения объема хранимой информации. Не так давно жесткий диск объемом в районе 500 мегабайт считался огромным, а сейчас уже можно приобрести за адекватную цену диски объемом 500 гигабайт, при этом их объем многим пользователям уже не кажется избыточным. Однако, как и в любом направлении развития компьютерной техники у НЖМД есть определенные нюансы, связанные с их совместимостью с современными системами. Именно данный аспект мы и рассмотрим.

Основные проблемы совместимости современных жестких дисков большого объема с интерфейсом SATA и IDE заключаются в отсутствии поддержки системой адресации LBA 48, позволяющей работать с НЖМД объемом более 137 Гб.

Итак, посмотрим, что такое система адресации LBA 48, зачем она нам нужна, и что необходимо сделать для того, чтобы она появилась у нас в системе.

Сорокавосьмибитная система логической адресации блоков (48-bit Logical Block Addressing ) — LBA 48 — это технология, позволяющая производить ATA/ATAPI устройства, в том числе жестких дисков с интерфейсами SATA и IDE, емкостью более чем 137 гигабайт.

Ограничение объема 137 гигабайтами относится только к ATA/ATAPI устройствам, к накопителям с интерфейсом SCSI данное ограничение не относится. Откуда взялось такое ограничение? Дело в том, что в первоначальной спецификации интерфейса ATA была предусмотрена только 28 битная адресация для устройств. В соответствии с ней допустимый объем для жесткого диска составлял 268,435,456 секторов по 512 байт, что и дает емкость диска в 137,4 гигабайта, 48 битная адресация позволяет работать уже с максимальной емкостью в 144 пентабайта (144,000,000 гигабайтов). Новый стандарт ATA (ATA/ATAPI-6) приобрел поддержку 48 битной адресации. Также стандарт предусматривает работу жестких дисков не поддерживающих 48 битную адресацию с контроллерами ее поддерживающими.

Какие основные проблемы возникают при использовании LBA 48?

Все современные НЖМД большого объема с интерфейсами IDE/SATA имеют встроенную поддержку 48 битной адресации. Однако, учитывая, что LBA 48 является дополнением к традиционному протоколу ATA, который в свою очередь рассчитан на доступ к данным, расположенным в пределах 137 Гб, некоторым системам потребуется модификация для корректного доступа к данным на накопителе объемом более 137 Гб.

Две основные программные составляющие системы, затрагивающие работу с LBA 48 — это БИОС (BIOS — base input output system — базовая система ввода вывода) и операционная система. БИОС — это микропрограмма, «зашитая» в системную плату (хранится в модуле энергонезависимой памяти), задача которой инициализация базовой логики чипсета платы и загрузка операционной системы, например Windows XP. Как правило, основные проблемы при установке накопителей с поддержкой LBA 48 в систему могут быть связаны с необходимостью обновить версию БИОС и установить соответствующее обновление для операционной системы, в случае, если поддержка LBA 48 отсутствует.

В БИОС современных системных плат поддержка LBA 48 имеется, если же в системе установлена достаточно старая плата, может возникнуть необходимость прошивки новой версии БИОС, саму микропрограмму, как и программу-прошивальщик можно найти на сайте производителя системной платы.

Что касается поддержки LBA 48 в наиболее распространенных операционных системах Windows, то тут мы обратимся к первоисточнику, а именно — Microsoft (оригинальные статьи по Windows 2000 и Windows XP).

Windows XP

Исходная версия Windows XP не поддерживает 48-разрядную LBA.

Windows XP с пакетом обновления 1 (SP1) обеспечивает поддержку 48-разрядной LBA для дисков с интерфейсом ATAPI, благодаря чему возможно использование жестких дисков объемом более 137 Гб. При использовании пакета обновления 1 (SP1) поддержка включается по умолчанию. В состав Windows XP Media Center Edition и Windows XP Tablet PC Edition пакет обновления 1 (SP1) входит изначально.

Для поддержки в Windows XP 48-разрядной LBA необходимо установить пакет обновления версии 1 (SP1) или выше.

Windows 2000

В Windows 2000 с пакетом обновления 2 (SP2) и более ранних версий отсутствует поддержка 48-разрядной логической адресации блоков (LBA) в соответствии со спецификацией ATA/ATAPI 6.0.

Первое исправление этой проблемы появилось в пакете обновления 3 (SP3) для Windows 2000.

Для поддержки в Windows 2000 48-разрядной LBA необходимо установить пакет обновления версии 3 (SP3) или выше и самостоятельно внести изменения в реестр.

Для полной поддержки LBA 48 в ОС Windows 2000/XP для НЖМД объемом более 137 Гб необходимо соблюдение следующих условий:

    1. Наличие системы БИОС с поддержкой LBA 48
    2. Наличие установленного пакета обновления — ниже версии 3 (SP3) для Windows 2000 и не ниже версии 1 (SP1) для Windows XP
    3. Для Windows 2000 SP3 необходимо самостоятельно внести исправления в системный реестр произведя следующие манипуляции:
  • Запустите редактор реестра (программа Regedt32.exe).
  • Откройте следующий раздел реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Atapi\Parameters
  • В меню Правка выберите пункт Добавить значение и добавьте следующий параметр реестра
    Параметр: EnableBigLba
    Тип данных: REG_DWORD
    Значение: 0x1

  • Закройте редактор реестра.

    В случае, если самостоятельные манипуляции в реестре нежелательны по каким-либо причинам, можно воспользоваться программой EnableBigLba от 48bitlba.com, позволяющей протестировать систему на значение параметра EnableBigLba, и в случае необходимости переключить его в рекомендованное Microsoft состояние нажатием одной кнопки.

    Windows NT и Windows 98

    Что касается поддержки LBA 48 операционными системами семейства Windows 98, то тут ситуация несколько более печальная. Несмотря на то, что данная операционная система достаточная старая и не поддерживает многие современные стандарты, некоторые пользователи продолжаются ее использовать, обычно в силу низкой ресурсоемкости данной ОС. Как известно, компания Microsoft — производитель данной операционной системы, прекратила ее поддержку и теперь пользователи предоставлены практически сами себе.

    Однако не все так грустно, как кажется на первый взгляд. Поддержку НЖМД LBA 48 под Windows 98 вполне можно организовать. Официальных варианта существует три, точнее даже два с половиной, так третий вариант сильно снизит скорость работы системы с жестким диском.

    Вариант первый
    Тут все относительно просто. Плата прошивается системным БИОСом с поддержкой LBA 48, а в ОС устанавливаются чипсетные драйвера для встроенного IDE/ATA контроллера с поддержкой LBA 48, через которые ОС и работает с диском большого объема.

    Вариант второй
    Устанавливается внешний RAID контроллер, желательно также убедиться, что его встроенный чип и БИОС поддерживают LBA 48. После чего в ОС устанавливаются драйверы данного контроллера также с поддержкой LBA 48. После чего все происходит, как в первом варианте.

    Вариант третий
    Жесткий диск большого объема устанавливается во внешний корпус с интерфейсом USB. В данном случае необходимо отследить поддержку LBA 48 контроллером «коробки» и наличие драйверов для Windows 98 в комплекте поставки или на сайте производителя. Далее все происходит также как и в предыдущих вариантах. Правда скорость обмена информацией будет довольно низкой, по сравнению со стандартным интерфейсом ATA.

    Как показывает практика, данные схемы работают в подавляющем большинстве случаев.

    Необходимо помнить, что создавать и форматировать разделы при работе с ОС не имеющими встроенную поддержку LBA 48, такими как Windows 98 и Windows NT следует только при помощи специализированных утилит сторонних разработчиков, имеющих поддержку LBA 48.

    Для Windows 98 также существует неофициальный патч от Rudolph R. Loew, правда его демоверсия позволяет работать только с объемом 145 Гб.

    Так существует универсальный UniATA драйвер от Александра Телятникова для ОС Windows NT 4.0, Windows 2000, Windows XP, а также специальная версия для ОС Windows NT 3.51, поддерживающий большое количество PATA и SATA контроллеров, в новых версиях обещана поддержка Windows 98 и AHCI. Данный драйвер имеет поддержку LBA 48.

    FAQ

    Вопрос
    Если проблема с LBA 48 означает, что НЖМД могут использовать максимальную емкость 137 Гб, то почему я не могу разделить мой НЖМД с поддержкой LBA 48 на несколько разделов каждый МЕНЬШЕ ЧЕМ 137 Гб, чтобы обойти данную проблему?
    Ответ
    Если Вы попробуете так сделать, но при этом Ваша система не поддерживает в полной мере LBA 48, возможна потеря данных на части жесткого диска, превышающей 137 Гб (точнее полностью на разделе). Дело в том, что в данном случае важна адресация секторов от начала диска, а не от начала конкретного раздела, поэтому разбиение диска на несколько разделов проблему не решает.

    Вопрос
    Я установил НЖМД большого объема в свою систему и обновил ее для полноценной поддержки LBA 48. В данный момент мне необходимо переустановить Windows, есть ли риск потерять данные на НЖМД?
    Ответ
    Возможно несколько основных вариантов:

      1. Вы имеете установочный диск с дистрибутивом Windows XP (без пакета обновления) или Windows 2000 (с пакетом обновления 2 или более раннюю версию). В том случае при попытке установить ОС в единственный раздел объемом более 137 Гб возможна потеря данных, так как данные версии Windows не имеют поддержки LBA 48.
      2. Вы имеете установочный диск с дистрибутивом Windows XP (с пакетом обновления 1 или 2) или Windows 2000 (с пакетом обновления 3 или 4), причем пакет обновления должен быть интегрирован в дистрибутив. данные версии Windows имеют поддержки LBA 48, поэтому риск потерять данные по этой причине отсутствует, при этом рекомендуется пользоваться дистрибутивом с последним вышедшим пакетом обновления для данной ОС.
      3. Вы храните на своем НЖМД очень ценные данные, потеря которых не восполнима или ведет к большим материальным затратам. В этом случае необходимо сделать резервную копию этих данных на сменный носитель или другой жесткий диск, который перед установкой нужно отключить.

    Вопрос
    Я имею НЖМД объемом 250 Гб, подключенный к контроллеру Highpoint HPT372, распаянному на моей системной плате. Я использую Windows XP SP1, а также драйвера и BIOS для системной платы с поддержкой LBA 48. тем не менее у меня есть проблемы с сохранностью информации на жестом диске, подключенному к данному контроллеру, в чем тут дело?
    Ответ
    Дело в том, что для работы контроллер Highpoint HPT372 использует собственный БИОС, который является отдельной частью системного БИОС и обновляется вместе с ним. Поэтому необходимо убедиться, что используемая версия БИОС контроллера Highpoint HPT372 имеет полноценную поддержку LBA 48, так как возможна ситуация, когда системный БИОС LBA 48 поддерживает, а БИОС контроллера — нет.

    Вопрос
    Я установил новый НЖМД большого объема с поддержкой LBA 48, обновил БИОС системной платы, установил последний пакет обновлений для ОС Windows, однако при этом ОС и программы для создания разделов видят только первые 137 Гб на моем жестком диске, в чем проблема?
    Ответ
    Посмотрите документацию на свой НЖМД. некоторые жесткие диски имеют специальные перемычки для работы с 28 битной адресацией, то есть с первыми 137 Гб, для совместимости с системами не имеющих поддержки LBA 48.

    Вопрос
    Мой НЖМД с поддержкой LBA 48 подключен к дискретному PCI контроллеру. БИОС моей системной платы имеет поддержку LBA 48, для ОС Windows установлен последний пакет обновлений, тем не менее ОС не может работать более чем со 137 Гб на этом диске, в чем проблема?
    Ответ
    Необходимо убедиться, что БИОС дискретного контроллера поддерживает LBA 48, после чего нужно скачать и установить свежие драйвера от производителя контроллера, предназначенные для используемой ОС.

    Вопрос
    У меня есть НЖМД объемом более 137 Гб, при этом моя система полностью поддерживает LBA 48. Я хотел бы иногда подключать этот жесткий диск к другим компьютерам для обмена информацией, есть ли тут какие-либо проблемы?
    Ответ
    При переносе НЖМД на другой компьютер необходимо убедиться в поддержке последним LBA 48, так как в случае отсутствия таковой иногда возникают проблемы, связанные с безвозвратной потерей информации.

    Вопрос
    У меня есть USB накопитель объемом более 137 Гб, возникнут ли у меня проблемы с поддержкой LBA 48 в этом случае?
    Ответ
    При подключении таких устройств по USB или FireWire каких-либо проблем не замечено, для Windows XP и Windows 2000 не требуются какие-либо дополнительные пакеты обновления и драйвера. В случае если НЖМД и внешний модуль с интерфейсом USB приобретаются отдельно для совместной эксплуатации необходимо убедиться, что контроллер внешнего модуля поддерживает LBA 48

    Вопрос
    Мой новый НЖМД емкостью 200 Гб определяется системой только объемом 186 Гб. В чем тут дело?
    Ответ
    Дело в том, что существует две системы счисления, используемых, чтобы выразить единицы емкости запоминающего устройства — десятичная и двоичная, в соответствии с первой 1 кб = 1024 байта, а в соответствии со второй 1 кб = 1000 байт, отсюда и разница, так как производители дисков указывают емкость, используя десятичную систему счисления, а система, в частности ОС, использует двоичную систему.

    Емкость HDD, Гб
    Общее количество байт
    Емкость HDD в двоичном счислении, 1кб=1024 байта
    10 GB
    10,000,000,000
    9.31 GB
    20 GB
    20,000,000,000
    18.63 GB
    30 GB
    30,000,000,000
    27.94 GB
    40 GB
    40,000,000,000
    37.25 GB
    60 GB
    60,000,000,000
    55.88 GB
    80 GB
    80,000,000,000
    74.51 GB
    100 GB
    100,000,000,000
    93.13 GB
    120 GB
    120,000,000,000
    111.76 GB
    160 GB
    160,000,000,000
    149.01 GB
    180 GB
    180,000,000,000
    167.64 GB
    200 GB
    200,000,000,000
    186.26 GB
    250 GB
    250,000,000,000
    232.83 GB
    300 GB
    300,000,000,000
    279.40 GB
    320 GB
    320,000,000,000
    298.02 GB

    Вопрос
    Я собрал новый компьютер с неразмеченным жестким диском объемом 250 Гб, у меня есть компакт диск с дистрибутивом Windows XP без интегрированных пакетов обновления, могу ли я установить систему с него, не рискуя в дальнейшем потерей информации?
    Ответ
    В принципе, можно использовать данный дистрибутив, но дело в том, что первоначальная версия Windows XP не имеет полноценной поддержки LBA 48, поэтому есть два варианта, позволяющих корректно работать с дисками большого объема:

      1. Самостоятельно интегрировать последний пакет обновлений в дистрибутив Windows XP
      2. Для установки Windows XP с дистрибутива без интегрированных пакетов обновления необходимо с помощью программы установки создать небольшой раздел объемом менее 137 Гб в начале диска и далее установить Windows XP в этот раздел. После чего установить последний пакет обновлений для этой ОС.

    Вопрос
    В моем компьютере на жестком диске объемом 40 Гб установлена ОС Windows 2000 SP1, вчера я купил новый НЖМД объемом 250 Гб, создал разделы на всем диске и отформатировал их средствами ОС. Однако сегодня, включив компьютер, я обнаружил, что все разделы пропали. Что случилось?
    Ответ
    Дело в том, что Windows 2000 SP1 не имеет поддержки НЖМД объемом более 137 Гб. Вам необходимо установить последний пакет обновлений для Вашей ОС и активировать параметр EnableBigLba в системном реестре. После чего удалить все разделы с нового жесткого диска, создать их вновь и отформатировать средствами ОС.

    Задать вопросы по поводу функционирования НЖМД объемом более 137 Гб можно в специально созданной ветке конференции.




  • Дополнительно