Стандартный контроллер sata в режим ahci. Что такое режим AHCI контроллера SATA? Особенности активации режима AHCI в разных версиях Windows

Advanced Host Controller Interface (AHCI ) - механизм, используемый для подключения накопителей информации по протоколу Serial ATA, позволяющий пользоваться расширенными функциями, такими как встроенная очередность команд (NCQ) и горячая замена.

Предназначен для замены устаревшего классического ATA-контроллера, который поддерживает совместимость сверху вниз еще с оригинальной IBM PC/AT, и поддерживает прямой доступ к памяти лишь как дополнение. Основные настоящие проблемы этого контроллера - отсутствие поддержки горячей замены (при том, что оборудование eSATA её поддерживает) и очередей команд, на одном канале (в случае SATA каждое устройство есть один канал) - может одновременно исполняться только одна команда. Таким образом, задействование возможности ATA NCQ, даже при поддержке её самим диском, невозможно на классическом ATA контроллере.

При переключении, при уже установленной ОС Windows, контроллера ATA, входящего в состав южного моста, в режим «AHCI» это будет означать, для установленной операционной системы, задействование несовместимой логики работы контроллера ЖД - это действие эквивалентно установке в систему платы контроллера ATA, отличного от существующего, и физического переключения загрузочного диска на эту плату.

В этом случае Windows при загрузке не найдёт загрузочный диск и аварийно остановится с BSOD STOP 0x0000007B, INACCESSIBLE_BOOT_DEVICE .

Текст взят из свободной энциклопедии http://wikipedia.org/

Итак, раз вы пришли на мой сайт, значит у нас появилась общая проблема, которая у вас появилась после покупки нового SSD (К примеру в ОГО.ру). И прочитав текст выше, вы могли понять её корень. Почему-то в Microsoft до сих пор не могут сделать свободный переход с одного драйвера на другой. И чтобы сделать это, пользователям приходится немного поработать руками, но в принципе совсем немного. Для решения проблемы необходимо до переключения в BIOS установить в Windows драйвер AHCI, а точнее, сделать небольшую поправку в реестре. Это инструкция для операционных систем Windows 7, Windows Vista и Windows Server 2008 R2. Для Windows 8 инструкция немного другая и доступна по ссылке:

I. Ручное переключение Windows 7 в режим AHCI

1) Заходим в реестр. Для этого воспользуемся WIN+R и в открывшемся окне пишем regedit :

2) Откроется встроенный «Редактор реестр» системы Windows. В левой части окна идём по пути:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci


3) Двойным щелчком откройте параметр Start и измените значение на 0 (по умолчанию стоит значение «3 » — AHCI не поддерживается):

4) На этом всё, закрываем реестр и перезагружаем компьютер.

5) Во время загрузки зайдите в BIOS и включите поддержку AHCI. Как это сделать можно прочитать в инструкции по эксплуатации к вашей материнской плате. Сохраняем настройки и перезапускаем компьютер.

После запуска Windows сама установит драйвер AHCI и перезапустится ещё раз. После перезапуска жесткие диски будут работать уже в стандарте AHCI.

Включить и настроить режим AHCI стоит каждому пользователю, желающему улучшить и расширить возможности компьютера в работе с жёсткими дисками SATA и, особенно, SSD.

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

Перед тем как рассматривать варианты включения режима, стоит сначала ознакомиться с его особенностями и принципом работы.

Что такое AHCI

Интерфейс современных жёстких дисков SATA, поддерживающих скорость передачи данных от 1,5 Гбит/с до 6 Гбит/с, способен работать в двух режимах:

  1. AHCI.

Первый обеспечивает совместимость со старыми устройствами (накопителями, выпускавшимися в 2000 годах). Скорость даже самых производительных дисков в этом режиме ненамного отличается от тех самых устаревших моделей. Более современный режим AHCI позволяет пользоваться всеми преимуществами интерфейса SATA в полном объёме. Например, отключением и подключением дисков к материнской плате «на лету», без выключения компьютера или с возможностью минимального перемещения головок диска для повышения скорости работы.

Активировав режим, пользователь ускоряет запуск файлов, чтение и запись информации на дисках и увеличивает общую производительность компьютера. И, хотя прирост может оказаться не таким значительным (в пределах 20%), для некоторых задач такое улучшение может оказаться важным. Если же у вас в работе SSD-диски с форм-фактором SATA, такой вариант является единственным возможным для эффективной работы устройства.

ВАЖНО: Стоит ли включать AHCI на SSD?

При использовании режима AHCI на SSD-диске, вы получите результат только, если у вас интерфейс SATA II/III, в остальных случаях улучшения работы не будет.

Как проверить, включён ли режим

Собираясь включить режим AHCI, убедитесь в том, что он уже не используется на компьютере. Если вы не запускаете высокопроизводительные приложения, у вас в наличии есть мощный процессор и достаточное количество памяти, вы можете просто не заметить, в каком режиме работаете.

Проверить, включён или не включён AHCI, можно таким способом:

  1. Сначала следует перейти к свойствам компьютера (меню «Пуск», пункт «Компьютер», подпункт «Свойства» в контекстном меню);
  2. Открыть диспетчер устройств;
  3. Открыть раздел IDE ATA/ATAPI контроллеры;
  4. Если здесь находится устройство, в названии которого есть AHCI – режим работает. Если такого диска в списке нет (а у вас стоит не устаревший винчестер IDE, а более современный), режим придётся включить самостоятельно.

Второй способ проверки работы AHCI – перезагрузка компьютера и переход в меню BIOS (с помощью одного из доступных вариантов – для разных материнских плат и ноутбуков он немного отличается, хотя чаще всего заключается в нажатии функциональных клавиш – от Esc до F12).

Зайдя в БИОС (или UEFI), убедитесь, в каком режиме работает SATA, найдя пункт SATA Mode или SATA Configuration.

Совет: При установленном режиме IDE, не стоит сразу же переключать его на AHCI и сохранять – особенно, если у вас ОС Windows 7.

Как включить режим AHCI

Включение этого режима на компьютере может быть выполнено прямо из БИОС.

При этом, если у вас стоит Windows 7, после попытки загрузить систему на экране, скорее всего, появится надпись типа 0x0000007B INACCESSABLE_BOOT_DEVICE, показывающая невозможность работы с диском. Иногда такая же ситуация происходит и с ОС Windows 8 и 10, но вероятность появления сообщения меньше – чаще всего компьютер запускается в работу или же начинает постоянно перезагружаться.

Совсем другая ситуация будет, если выбрать AHCI-режим перед установкой системы. Это даст возможность программному обеспечению с установочного диска распознать параметры HDD или SSD в процессе запуска установщика, и никаких проблем с запуском режима уже не будет.

Сложности начинаются, только если система уже установлена на накопитель, а пользователь собирается изменить параметр IDE на SATA и включить NCQ (Native Command Queuing, расширение протокола SATA, заметно увеличивающую скорость работы с информацией за счёт оптимизации порядка получения команд). В этом случае придётся воспользоваться либо редактором реестра, либо безопасным режимом, в зависимости от операционной системы. Если ни одно из этих действий не обеспечит требуемого результата, останется только включать AHCI и переустанавливать систему.

Для Windows 7

Одна из самых популярных в настоящее время операционных систем, Windows 7, требует для переключения в режим AHCI использования реестра или специальной утилиты. Первый вариант включает в себя следующие этапы:

  1. Запуск редактора реестра (Win + R для вызова меню «Выполнить», ввод команды regedit и подтверждение изменений);
  1. Переход к разделу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci;
  2. Переход к пункту Start, значение которого по умолчанию 3, и изменение его на ноль;
  1. Переход в этом же подразделе с пункта msahci на IastorV и поиск параметра Start;
  2. Изменение тройки на ноль;
  3. Закрытие редактора.

Теперь осталось перезагрузить компьютер и включить нужный режим AHCI в меню БИОС. После загрузки системы Windows 7 начнёт автоматически устанавливать драйвера для всех подключённых к материнской плате дисков, а затем потребует ещё перезагрузиться для внесения изменений. Последний этап настройки режима – проверка включения режима кэширования записи в свойствах диска. Если он не включён, функцию следует запустить.

Ещё один вариант – утилита Microsoft Fix it , позволяющая избавиться от ошибок после включения нового режима (скачать её можно с официального сайта Microsoft). После запуска и выбора соответствующего действия для исправления неполадок приложение автоматически выполнит все необходимые изменения, и сообщение об ошибке уже не будет появляться.

Для Windows 8 и 8.1

Если на компьютере уже установлена Виндовс 8 или 8.1, для настройки режима AHCI можно воспользоваться безопасным режимом. Для этого при возникновении ошибки следует:

  1. Вернуть режим IDE в БИОС;
  2. перезагрузить компьютер;
  3. Запустить командную строку от имени администратора («Пуск»/«Все программы»/«Стандартные»);
  4. Ввести команду bcdedit /set {current} safeboot minimal
  1. Нажать кнопку ввода;
  2. Перезагрузить ПК и войти в БИОС;
  3. Включить режим AHCI;
  4. Ещё раз запустить командную строку;
  5. Ввести команду bcdedit /deletevalue {current} safeboot;
  6. Повторно перезагрузить систему, после чего ОС Windows должна перестать выдавать сообщение об ошибке.

Если ваша система работает на процессоре Intel, возможен дополнительный вариант включения AHCI с помощью утилиты от этого производителя (для AMD способ не работает).

Для его использования следует:

  1. Скачать файл f6flpy (драйвер режима) с официального сайта Интел, выбрав подходящую версию (х32 или х64);
  2. Скачать с этого же ресурса файл SetupRST.exe;
  3. Открыть диспетчер устройств и в свойствах вашего жёсткого диска установить вручную новый драйвер f6 AHCI вместо SATA;
  4. Перезагрузить ПК и в БИОС (UEFI) включить AHCI;
  5. Запустить файл SetupRST.exe, который должен автоматически решить проблему.

Для Windows 10

Windows 10 для исправления ошибки при переключении режима тоже позволяет воспользоваться утилитой для процессоров Intel, переустановкой системы и безопасным режимом. Но наиболее эффективным вариантом будет использование редактора реестра, которое немного отличается от аналогичного метода в Виндовс 7.

Для того чтобы воспользоваться этим методом требуется:

  1. Войти в систему под именем администратора;
  2. Запустить редактор реестра одним из доступных способов (проще всего через окно «Выполнить» и команду regedit);
  3. Перейти к разделу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStorV и найти его параметр Start, изменив его значение на 0;
  4. Найти в соседнем подразделе Services\iaStorAV\StartOverride параметр с именем 0, установив нулевое значение и для него;
  5. Перейти в подраздел Services\storahci, провести обнуление параметра Start;
  6. В подразделе Services\storahci\StartOverride поставить значение ноль для параметра 0.
  7. Закрыть редактор и перезагрузить компьютер;
  8. Войти во время загрузки системы в BIOS и включить режим AHCI.

Совет: Рекомендуется выполнить первый запуск Windows 10 в безопасном режиме, для чего эту опцию включают с помощью меню «Выполнить» (Win+R) и ввода команды msconfig для вывода на экран окна настройки конфигурации системы. Здесь нужно выбрать вкладку «Загрузка» и поставить галочку на пункте безопасного режима, указав вариант «Минимальная».

Рис.9. Переключение режима в интерфейсе UEFI

Для стандартного интерфейса BIOS перейти к его настройкам можно, нажав при загрузке соответствующую функциональную клавишу. Например, F2 или F12, в зависимости от материнской платы или модели ноутбука, если настройка производится для него.

После первой же загрузки Виндовс 10 установит все необходимые драйвера для работы с AHCI, и в дальнейшем не будет выдавать никаких ошибок. При этом скорость работы с данными должна возрасти – особенно, если диск имеет интерфейс SATA III.

Другие особенности режима

Для устаревшей ОС Windows XP возможности установки режима AHCI нет. При её разработке такой вариант даже не предполагался. Если очень хочется, нужный драйвер легко найти в сети и встроить в систему. Инструкции процесса также можно найти в интернете, однако мы не рекомендуем выполнять такие действия. В первую очередь, потому что процессору и всему компьютеру, который поддерживает только систему Виндовс XP, установка режима AHCI вряд ли заметно поможет ускориться. Во-вторых, значительные различия между драйверами увеличивают вероятность ошибки, после которой могут быть потеряны данные с диска.

Для Windows Vista процесс включения режима такой же, как и для 7-й версии системы – то есть с помощью реестра или утилиты. А Виндовс NT можно настроить аналогично рекомендациям для XP. Есть варианты драйверов и на другие системы – от Unix до MacOS, так как ssd-накопители и SATA приобретают популярность среди пользователей любых систем.

Выводы

В большинстве случаев после выполнения соответствующих действия в системе режим AHCI начинает работать нормально, а система работает немного быстрее. Если никаких результатов добиться не получилось, можно попробовать переустановить систему после изменения режима – это может занять больше времени, зато гарантирует результат.

Здравствуйте уважаемые читатели! Сегодня Вы узнаете как включить режим AHCI в Windows , и вообще что это такое.
Статья обещает быть объёмной и не бесполезной почти для всех пользователей компьютера, если не учитывать совсем уж профи технарей:).

AHCI (Advanced Host Controller Interface AHCI в переводе с англ. Расширенный Интерфейс Хост-Контроллера ) - режим подключения накопителей по протоколу Serial ATA . Данный режим позволяет компьютеру воспользоваться расширенными возможностями и функциями при подключении жестких дисков, что приводит к повышению их производительности.
Современные накопители (HDD и SSD) подключаются к материнской плате компьютера через интерфейс (разъём) SATA (Serial ATA), который вытеснил устаревший интерфейс PATA (Parallel ATA). На картинке №1 слева изображен разъём PATA, а справа SATA.
отображение в диспетчере устройств IDE режима и AHCI режима
SATA интерфейс умеет работать в 2-х режимах:

  1. IDE (Integrated Development Environment с англ параллельный интерфейс подключения накопителей ) - старый режим, который используется для совместимости со старым ПО и оборудованием.
  2. AHCI (Advanced Host Controller Interface) - новый режим, который расширяет возможности подключения и позволяет задействовать все преимущества интерфейса SATA. Например:
    • Горячая замена жесткого диска, то есть накопитель можно поменять не выключая компьютер. Данная особенность в основном ценна для администраторов обслуживающих сервера.
    • NCQ (Native Command Queuing с англ. - встроенная очерёдность команд ) - функция, которая позволяет сократить количество перемещений считывающей головки HDD, что приводит к оптимизации скорости считывания данных при использовании накопителя несколькими программами одновременно.

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

Теперь, когда мы узнали что это за режим AHCI , то пора задуматься о том, как его включить. Возможно он у Вас уже включён. Проверить можно так:

  1. Нажмите на клавиатуре нашу любимую комбинацию кнопок Win+R и введите команду mmc devmgmt.msc . Потом нажмите кнопку Enter . Запустится Диспетчер устройств Windows .
  2. В Диспетчере устройств Windows раскройте раздел IDE ATA/ATAPI контроллеры . Если увидели устройство, у которого в наименовании есть слово AHCI, значит нужный нам режим активирован.

Если не увидели слово AHCI, то значит он отключен. Включить его можно в BIOS"е . Но его включение может сопровождаться некоторыми проблемами, о которых расскажу ниже.

Включение AHCI. Особенности активации и возможные проблемы.

Для включения режима AHCI и найдите там пункт SATA Mode или что то на него очень похожее. Название пункта в разных версиях Биоса может чуть отличаться. В данном разделе можно переключать режим SATA из IDE в AHCI и наоборот. Если у вас стоит IDE , то не спешите переключаться в режим AHCI , так как для его корректной работы нужен специальный драйвер Windows AHCI . В Windows 7/8/10 и Vista этот драйвер встроен в саму ОС. При этот драйвер автоматически устанавливается в систему. Если же система уже установлена и вы хотите переключить режим SATA из IDE в AHCI, то придётся поковыряться в системном реестре. Но об этом я напишу в других статьях, отдельно для Windows 7 Windows 8 и . Рекомендую вам дождаться этих публикаций. Здесь вам достаточно знать, что просто так включать его нельзя. Если просто переключить в Биосе режим на AHCI, то получите нерабочую ОС.
На Windows XP вообще не рекомендую даже пытаться его включать, потому что драйвер AHCI для этой ОС отличается в зависимости от каждой компьютера.

Вполне естественно, что владельцы настольных вычислительных систем и ноутбуков стремятся теми или иными способами повысить их производительность. Для решения этой задачи одни используют так называемый оверклокинг (разгон) компонентов, другие же - внесение настроек через предусмотренные разработчиками возможности. При выборе любого способа важно понимать, что именно требуется получить, и хорошо разбираться в особенностях выбранного метода.

"Бутылочное горлышко"

Известно, что одним из наиболее медленных составляющих современной вычислительной системы является основанный на классической шпиндельной системе. Сегодня появились SSD-аналоги, но они пока еще не получили массового распространения из-за слишком высокой стоимости.

Поэтому обычные HDD устанавливаются практически на каждый компьютер. В итоге получается, что память стандарта DDR3 легко передает 20 000 Мб/с; внутренняя шина центрального процессора позволяет обработать в десять раз больше данных; а винчестер со стандартом SATA-3 лишь в идеальных условиях «разгоняется» до настоящих 100 мегабайт в секунду. Не случайно рекомендуется хотя бы для системных файлов использовать производительные SSD-модели. Из всего вышесказанного следует простой вывод: именно HDD замедляет современную систему, являясь тем самым «бутылочным горлышком». А так как пользователь может легко внести изменения в способ обработки команд дисковой подсистемы, в определенной степени влияя на скорость, то часто можно услышать вопрос о том, какой режим лучше: AHCI или IDE.

Стандарты

Взаимодействие диска с остальными компонентами вычислительной системы происходит через специальный управляющий контроллер. Этот чип служит своеобразным переводчиком команд, преобразователем. До недавнего времени единственным «языком», понятным контроллеру, являлся протокол IDE.

Он возник на заре компьютерной индустрии и несколько раз модернизировался. С появлением высокоскоростных SATA-дисков потребовалась кардинальная переделка протокола. Так и возник легко справляется с возросшим потоком данных (интерфейс), поддерживает модную очередь команд NCQ и реализует возможность отключения устройства «на ходу». Итак, что такое AHCI? IDE, в котором добавлены некоторые новые возможности. Вот так все просто, на первый взгляд.

Возможности и перспективы

Так как стандарты являются обратно совместимыми (устройство SATA отлично работает по протоколу IDE), то в БИОС или его аналоге почти всегда присутствует пункт, позволяющий выбрать желаемый режим.

Во многих случаях лишь благодаря этому удается добиться нормальной работоспособности компьютера. Функция выбора режимов присутствует только в программном обеспечении тех материнских плат, которые предусматривают работу с SATA. Это все современные системы. Однако сюда же можно приписать гибридные решения, позволяющие подключать как классические IDE-устройства (РАТА, широкая гребенка разъема), так и SATA (компактный коннектор). Итак, AHCI или IDE? Что лучше? Чтобы было проще разобраться в этом, приведем список «бонусов», которые получает пользователь, активируя более современный режим:

1. по внутренним электронным цепям «контроллер диска - контроллер платы» достигает от 1.5 Гб/с (гигабит) для модификации SATA-1 до 6 в третьей ревизии. Напомним, что UDMA-6, в котором могу работать старые винчестеры, предусматривает лишь 133 Мбит/c.

2. Говоря о том, что лучше - AHCI или IDE, нельзя не указать поддержку технологии NCQ. Ее суть заключается в том, что винчестер может «вмешиваться» в очередь потока команд, перестраивая их для повышения эффективности работы.

3. Возможность «горячей» замены устройства, при которой не требуется отключение всей системы.

4. Параллельное обращение сразу ко всем дискам, без использования поочередного переключения.

Вот такой весьма заманчивый список возможностей. Неудивительно, что вопрос: «AHCI или IDE: что лучше?» является, пожалуй, одним из самых наболевших. Многие владельцы компьютеров, как это ни удивительно, все еще верят в «волшебную кнопку».

Теория и практика

Так все-таки, AHCI или IDE - что лучше? Из вышеприведенного списка можно сделать вывод, что устаревший протокол значительно проигрывает новому. Однако это не совсем так. Рассмотрим этот момент подробнее. Да, действительно, скорость передачи данных возросла в десятки раз, однако магнитные диски в винчестерах как вращались со скоростью 7200 оборотов (наиболее популярное решение), так и вращаются. Соответственно, в процессе считывания никаких революционных прорывов не произошло. Ни в каком тесте HDD пользователь не увидит 6 Гбит передачи. Даже 200 Мбит недостижимы! Исключение - твердотельные накопители. Если в системе присутствует такое устройство, то можно не разбираться с вопросом: "AHCI или IDE: что лучше?", а сразу активировать обновленный протокол. Однако, как мы указывали, из-за стоимости подобные накопители еще не стали массовыми.

Очень часто в дебатах о том, что лучше - AHCI или IDE, в качестве основного аргумента в пользу первого указывается способность протокола поддерживать NCQ. Действительно, при активном обращении сразу нескольких программ к жесткому диску данная функция позволяет перестраивать поток запросов наиболее оптимальным способом. Однако в среднестатистическом компьютере к диску редко одновременно обращаются более двух-трех программ, поэтому говорить о полном отсутствий ускорения нельзя, но оно получается в пределах погрешности.

IDE или AHCI - что лучше? Windows 7 при активировании последнего режима поддерживает подключение/отключение SATA-устройства «на ходу». Довольно удобно, особенно в серверных системах, где выключение нежелательно. Тем не менее для использования «горячей замены» рекомендуется задействовать не внутренние разъемы, а выведенные на корпус модификации SATA.

И, наконец, протокол позволяет нескольким винчестерам на шине работать одновременно, а не ожидать запросов. Именно в данном случае потенциал NCQ полностью раскрывается. Для среднестатистического компьютера не актуально.

В итоге получается, что хотя протокол AHCI, с точки зрения технологий, более интересен, тем не менее от его включения основная масса пользователей не получит ничего, кроме морального удовлетворения. Всего два исключения из общего правила: серверная система и использование SSD.

Нюансы использования

Хотя переключить режимы в БИОС можно за несколько секунд, следует учитывать один важный момент. Он состоит в следующем: если операционная система была установлена, например, с AHCI, то после перевода на IDE загрузка может оказаться невозможной. Это не правило, но чаще всего все происходит именно так. Поэтому еще до инсталляции дистрибутива нужно решить, с каким протоколом дисковой подсистемы планируется работать.

Пакеты драйверов AHCI стали интегрировать в систему лишь с Vista. Все предыдущие решения от «Майкрософт» встроенной поддержки не имеют, поэтому нужно либо использовать «сборки», либо перед установкой приготовить носитель с соответствующим драйвером. С новым стандартом отлично работает Windows 7. Переключение SATA из IDE режима в AHCI должно осуществляться из БИОС (пункт Configure SATA). В очень редких случаях может потребоваться внесений изменений в реестр.

Способ переключения

Для того чтобы попасть в БИОС, сразу после включения вычислительной системы нужно несколько раз подряд нажать кнопку Delete (персональные компьютеры) или F2 (ноутбуки). В зависимости от реализации, нужный пункт может находиться в любых разделах. Например, для его активации может потребоваться перевод Boot Mode в CSM вместо UEFI, после чего в появляется Compatible (IDE) и AHCI. Искомый пункт может находиться в разделе SATA Enhanced. Нужно внимательно просмотреть весь существующий список. После переключения следует нажать ESC и согласиться с сохранением изменений.

Итоги

Решение о том, какому именно протоколу отдать предпочтение, зависит от нескольких факторов. Прежде всего, от используемой операционной системы. От совместимости на «железном» уровне. И конечно же от нагрузки на подсистему. Чем она выше, тем предпочтительней AHCI. Если проанализировать все отзывы, то можно сказать, что оба протокола отлично работают, при правильной настройке не вызывая никаких сбоев. Тем не менее более целесообразно использовать обновленную версию. Это, так сказать, задел "на будущее", например, на покупку SSD.

Вы купили новый винчестер. Конечно, с интерфейсом Serial ATA. И, конечно, много слышали о новой интересной функции, реализованной в последних моделях — NCQ. Предвкушая заметный прирост скорости загрузки Windows и программ, а также снижение шума винчестера, вы подключаете винчестер, устанавливаете операционку и… Теперь вам потребуется проделать дополнительные манипуляции, чтобы включить поддержку AHCI и установить подходящие драйверы. Иначе технология NCQ, равно как и другие интересные функции, останется незадействованной.

Ради чего

Идея, лежащая в основе технологии NCQ (Native Command Queuing), уже не раз была реализована в жестких дисках и контроллерах, но не в тех, что применяются в обычных персоналках.

Итак, вот какой принцип лежит в основе NCQ. Как известно, жесткий диск работает довольно медленно, по сравнению с другими устройствами ПК ввиду его механической природы. Особенно много времени тратится на перемещение головок между дорожками, на которых расположены запрошенные системой сектора с данными. Чтобы эти перемещения минимизировать, можно применить хорошо известный в информатике метод переупорядочивания очереди команд. В данном случае в качестве критерия перестройки используется расстояние между дорожками, к которым будет производиться доступ. Команды на чтение, поступающие к жесткому диску со стороны системы, выполняются не по порядку, а накапливаются в очереди. Там они меняются местами таким образом, чтобы головка при выполнении соседних запросов смещалась как можно меньше. За счет этого и достигается ускорение.

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

Собственно, некоторые минусы после приведения примера с лифтом вам стали очевидны. Не все запросы будут выполнены быстрее — некоторые могут “застрять” в очереди, пропуская другие запросы. А появление запроса на запись вообще осложняет обработку очереди команд, так как возможна ситуация нарушения целостности данных.

Кроме того, подобная технология даст выгоду только в том случае, если команды винчестеру поступают плотным потоком и намного быстрее, чем он успевает их выполнить. В условиях современных ПК такая ситуация происходит не очень часто — в основном в момент загрузки ОС и больших программных пакетов. Поэтому за реализацию технологии NCQ взялись только в последнее время, хотя в серверной среде интеллектуальное переупорядочивание команд применяется давно и успешно.

Следует заметить, что возможность изменения порядка команд и обработки очередей заложена и в протоколе интерфейса ATA (технология TCQ). И даже есть примеры вполне успешной ее реализации. Но сделано это не очень красиво и удобно. Дело в том, что протокол интерфейса ATA, по которому работают жесткие диски с обычным, “параллельным” интерфейсом, основан на протоколе работы шины ISA. Процедура инициализации и передачи команды, а также слежение за состоянием и ошибками — довольно длительная и сложная процедура, требующая анализа нескольких регистров. Поэтому разработчики решили реализовать поддержку данной технологии в винчестерах, использующих новый интерфейс — Serial ATA.

Протокол AHCI

Контроллер Serial ATA, согласно требованиям этого стандарта, должен поддерживать, как минимум, два режима работы. Первый — режим эмуляции стандартного контроллера ATA (Legacy Mode) . В этом режиме контроллер полностью повторяет протокол обращения к жесткому диску ATA и, с точки зрения операционной системы и драйверов, не отличается от контроллера “параллельного” интерфейса. При этом подключенные к нему винчестеры эмулируются либо как устройства Master на отдельном канале, либо, если операционная система “не понимает” более двух каналов — как пары устройств Master и Slave. Этот режим включен по умолчанию, он полностью поддерживается всеми операционными системами и BIOS.

Проблема в том, что в режиме эмуляции реализация дополнительных функций Serial ATA частично или полностью невозможна, иначе совместимость с классической реализацией ATA будет нарушена. Поэтому контроллер имеет возможность переключиться в “родной” (Native) режим Serial ATA , который не имеет сковывающих его “родственных обязательств” по отношению к ATA.

Протокол AHCI (Advanced Host Controller Interface) как раз описывает поведение контроллера в режиме Native с точки зрения системы. Он описывает, каким образом контроллер обрабатывает очередь команд, где и как они хранятся, как программист должен помещать команды в очередь и где получать результаты их выполнения. Все условности протокола ATA отброшены, все сложности с манипулированием регистрами и флагами упразднены за ненадобностью. Реализация всех дополнительных функций Serial ATA, включая NCQ, Hot Swap, Port Multiplier, Staggered Spin-Up и т.д., теперь ничем не ограничивается.

Native Mode нацелен для работы с операционными системами Windows 2000, XP, Vista, Windows 7.

Иначе говоря, функции протокола AHCI работают только в Native Mode Serial ATA.

Данный протокол был разработан специальной инициативной группой во главе с Intel. Он является дополнением к стандарту Serial ATA, который, в общем-то, не описывает требования к хост-контроллерам (контроллерам со стороны вычислительной системы, к которой подключен винчестер). Вместе с AHCI стандарт Serial ATA является законченным решением для организации дисковой подсистемы в ПК нового поколения.

Вместе с тем теряется совместимость с программным обеспечением, не поддерживающим Serial ATA изначально. Работать в двух режимах одновременно контроллер не может. Переключаясь в режим Native, он теряет возможность принимать команды от программного обеспечения, не “понимающего” протокол AHCI. Напомним, что Windows XP не работает изначально с Serial ATA в Native Mode AHCI, а Vista и Windows 7 его поддерживают.

Как включить AHCI

Способ первый, классический. Как и при создании RAID, вы используете установочную дискету, идущую в комплекте с материнской платой или созданную самостоятельно. Начинаете установку Windows, доходите до первой перезагрузки, а когда появляется надпись “Press F6…” внизу синего экрана, нажимаете F6 и предлагаете дискету. Следует выбрать правильный вариант драйвера и продолжить установку Windows. Впоследствии, когда установка успешно завершится, будет нелишним еще раз установить драйверы и утилиты — они позволят проделать некоторые настройки и убедиться, что NCQ включена.

Второй способ сложнее, но он позволяет обойтись и без дискеты, и без переустановки Windows. Для этого в BIOS вашего компьютера должна быть возможность отключения AHCI (или Native Mode, что в данном случае синонимы). При включенном режиме эмуляции вы проводите установку Windows, а потом устанавливаете драйверы от производителя контроллера (чипсета материнской платы). Если они не ставятся автоматически, делаете это вручную. Потом включаете AHCI в BIOS, и система начинает использовать преимущества NCQ.

На примере Intel

В чипсетах Intel поддержка AHCI появилась еще в серии 915. Правда, только в южных мостах с суффиксами “R”, “M” и “DH”:

  • ICH6R, ICH6M — чипсеты серии 915/925;
  • ICH7R, ICH7M, ICH7DH, ICH7MDH — чипсеты серии 945/955/975;
  • ICH8R — чипсеты серии 965.
  • ICH9R — чипсеты серии P35

Такими мостами комплектуются только ноутбуки на платформе Centrino, начиная со второго поколения, и материнские платы на чипсетах серии — 925, 955, 975... Как правило, если AHCI поддерживается, то в BIOS будет соответствующая строчка. В крайнем случае, можно заглянуть в руководство к материнской плате.

Контроллер AHCI встроен в набор микросхем со следующим контроллером-концетратором:

  • Блок контроллеров Intel® ICH10R/DO SATA RAID/AHCI
  • Блок контроллеров Intel® ICH10D SATA AHCI
  • Блок контроллеров Intel® ICH9M-E SATA RAID/AHCI
  • Блок контроллеров Intel® ICH9M AHCI
  • Блок контроллеров Intel® 82801IR/IO (ICH9R/DO) — RAID и AHCI
  • Контроллер-концетратор ввода/вывода Intel® 82801HEM (ICH8M-E) — RAID и AHCI
  • Контроллер-концентратор ввода/вывода Intel® 82801HBM (ICH8R) — только AHCI
  • Блок контроллеров ввода/вывода Intel® 82801HR/HH/HO (ICH8R/DH/DO) — RAID и AHCI
  • Контроллер-концентратор ввода/вывода Intel® 631xESB/632xESB — RAID и AHCI
  • Контроллер-концентратор ввода/вывода Intel® 82801GHM (ICH7MDH) — только RAID
  • Блок контроллеров ввода/вывода Intel® 82801GBM (ICH7M) — только версия AHCI
  • Блок контроллеров ввода/вывода 82801GR/GH (ICH7R/DH) — RAID и AHCI
  • Блок контроллеров ввода/вывода Intel® 82801FR (ICH6-R) — RAID и AHCI
  • Контроллер-концентратор ввода/вывода Intel® 82801FBM (ICH6M) — только AHCI

Вам понадобятся драйверы Intel Matrix Storage, бывшие Intel Application Accelerator, а также установочная дискета к ним. Ее образ можно скачать с сайта Intel. Драйверы с этой дискеты пригодятся и для установки Windows, и для включения AHCI уже после установки. В последнем случае не забудьте обязательно установить Intel INF Update перед тем, как начинать манипуляции с другими драйверами. После того, как драйверы стандартного контроллера Serial ATA будут заменены на драйверы с установочной дискеты Intel, можно включать AHCI. Windows сможет загрузиться, и дальше можно продолжить установку комплекта Matrix Storage — без включения AHCI он запускаться откажется. Для контроллеров других производителей процедура аналогичная — сначала установка драйверов, потом включение AHCI.

Винчестер в данном случае не затрагивается — форматировать, перешивать и т.п. ничего не нужно.

Пошаговая инструкция для m/b Intel с южными мостами ICH6R, ICH6M, ICH7R, ICH7DH, ICH7M, ICH8R, ICH9R

Примечание: ниже речь идет о 32bit версиях Windows. Само собой, драйвер есть и для x64. Найти его просто.

  1. Убедитесь, что в BIOS отключен AHCI и не забудьте сделать backup папки Windows. Также советую сделать запасной загрузочный диск.
  2. Скачайте 79im05ww.exe и распакуйте, например, в C:\DRIVERS\WIN\SATA
  3. В случае, если у Вас ICH7M, перейдите к шагу (5)
  4. Отредактируйте C:\DRIVERS\WIN\SATA\PREPARE\IMSM_PRE.inf заменив все DEV_27C5 на значения, соответствующие Вашему южному мосту:
    • ICH6R — DEV_2652
    • ICH6M — DEV_2653
    • ICH7R — DEV_27C1
    • ICH7DH — DEV_27C1
    • ICH7M — DEV_27C5
  5. Нажмите Win+R, введите C:\DRIVERS\WIN\SATA\PREPARE\INSTALL.CMD, нажмите Ok
  6. Перезапустите PC и включите в BIOS поддержку AHCI
  7. При загрузке OS запустится wizard обнаружения новых устройств:
    • В случае Windows XP выберите No, not this time, затем Install from a list or specific location (Advanced) и в качестве пути укажите C:\DRIVERS\WIN\SATA
    • В случае Windows 2000 выберите Search for a suitable driver for my device (recommended), затем Specify a location и укажите C:\DRIVERS\WIN\SATA

Решения для платы с ICH8R:

  • для установки Windows XP при включеном AHCI необходимо заблаговременно создать дискету с драйвером AHCI. Всё необходимое для этого имеется на диске, идущим в комплекте с материнской платой.

При установке Windows XP SP 2 помещаем дискету с драйвером в устройство чтения FDD. В момент запроса установщика Windows – « Нажмите F6 для установки специального драйвера SCSI или RAID» жмём F6 и из предложенного списка выбираем драйвер AHCI.

  • в том случае, если у Вас нет устройства чтения дискет, либо Windows XP уже установлена в режиме работы SATA – IDE можно интегрировать необходимый драйвер прямо в операционной системе.

Делается это следующим образом.
Заходим в диспетчер устройств и находим в списке IDE ATA/ATAPI контроллеры.
Обновляем драйвера для контроллеров (по умолчанию их 2).
Для этого, выбираем пункт Обновить драйвер => Не выполнять поиск. Я сам выберу нужный драйвер.
Указываем путь к папке Drivers\Chipset\Intel\makedisk\DOS\F632 на установочном диске к материнской плате.
Снимаем галочку «Только совместимые устройства» и выбираем из списка Intel ® ICH8R/D0/DH SATA AHCI Controller. (так для обоих контроллеров!!!).
Система попросит перезагрузку — выполняем. При перезагрузке в BIOS выбираем режим контроллера — AHCI.

Установка Windows XP на ноутбуках с Vista и Serial ATA AHCI

Как признаются разработчики этой операционной системы в специальном документе (http://www.microsoft.com/whdc/device...alATA_FAQ.mspx), дисковая подсистема всех версий Windows, вышедших до версии Vista, поддерживать AHCI не будет. Объясняют они это наличием особенностей в реализации AHCI производителями разных контроллеров. В будущем в ядре Windows будет реализован новый механизм подключения драйверов — Ataport, и в составе драйверов будет идти стандартный минипорт для Native-режима контроллера Serial ATA. А пока, увы, нужно устанавливать специальный драйвер или SCSI-минипорт непосредственно от производителя контроллера.

Эта проблема сложнее, чем кажется на первый взгляд. Операционная система Windows устроена таким образом, что при старте она должна обязательно «подхватить» правильный драйвер для контроллера жестких дисков. Иначе старт прерывается пресловутым «синим экраном», избавиться от которого можно только переустановкой системы. Мало того, процесс установки тоже прервется этим же «синим экраном», если вовремя не предоставить Windows дискету с нужным драйвером. Владельцам ноутбуков вообще не позавидуешь — им и дискету-то вставить некуда, а другие носители Windows в данном случае не принимает.

Итак, ставим Windows XP на ноутбук с AHCI.

В большинстве случаев, попытка установки ХР в режиме эмуляции приводит в появлению BSOD («синего экрана смерти») со следующей ошибкой:

STOP 0x0000007B INACCESSABLE_BOOT_DEVICE

Как уже было сказано, существует 2 способа установки Windows XP с включенным в BIOS SATA Native Mode: подкидывание драйверов дистрибутиву при загрузке через F6 или модификация операционной системы таким образом, чтобы уже интегрировать нужные драйвера в дистрибутив.

В первом случае, поскольку флопика в ноутбуке нет, то единственный выход — использовать USB Floppy Drive, который не так уж и дёшев.

Интеграция драйверов в дистрибутив более сложна, но экономически более целесообразна.

Дистрибутивов (сборок) с уже интегрированными драйверами достаточно много, достаточно скачать такой из Интернета и записать на болванку. Если же вы не можете найти такую сборку, то остается только интегрировать драйвера самостоятельно в дистрибутив с помощью программы nLite .

Например, для платформы Intel с ICH7-ICH8 (Intel ® Matrix Storage Manager) стандартно это файлы:

  • iaahci.cat
  • iastor.cat
  • iaahci.inf
  • iastor.inf
  • txtsetup.oem
  • iastor.sys

Во время установки Windows Vista все неиспользуемые драйверы запоминающих устройств отключаются. Это позволяет увеличить скорость запуска операционной системы. При замене драйвера загрузочного диска на драйвер, который был отключен, необходимо включить новый драйвер перед изменением конфигурации SATA в BIOS.

Предположим, выполняется установка Windows на компьютер с контроллером, который использует драйвер Pciide.sys . Затем пользователь выполняет изменение режима SATA на AHCI. Теперь для диска должен загружаться драйвер Msahci.sys. Однако прежде чем вносить такие изменения, необходимо включить драйвер Msahci.sys . Данная проблема имеет отношение только к загрузочному диску. Если изменение выполняется для диска, который не является загрузочным, данная проблема не возникает.

Для устранения неполадок перед изменением режима SATA загрузочного диска включите драйвер AHCI в реестре. Для этого выполните следующие действия:

  1. Запустите редактор реестра regedit .
    Найдите и выделите следующий подраздел реестра:
  2. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msahci
  3. На правой панели щелкните правой кнопкой мыши параметр Start в столбце Имя , затем нажмите Изменить .
  4. В поле Значение введите 0 и нажмите кнопку ОК .
  5. Закройте редактор реестра.

Способ профессиональный. Вместо интеграции драйверов в дистрибутив можно попробовать написать файл \i386\winnt.sif и положить его в дистрибутив, в котором прописать пути к папкам с дровами.

Что-то вроде:

OemPnpDriversPath = «Drivers\megaIDE;Drivers\ICH85;Drivers\ICH78;Drivers\ICH62;Drivers\!inf;Drivers\lan.Pro100;Drivers\lan.Pro1000;lan.Drivers\lan.rtl8169;Drivers\IntelVGA895;Drivers\IntelVGA845;Drivers\lan.Marvell;Drivers\lan.Attansic;Drivers\jMicron;Drivers\ATK100;Drivers\ATK110»

Интернет