Зачем нужен AHCI.
AHCI (Advanced Host Controller Interface ) это механизм, используемый для подключения накопителей информации по протоколу Serial ATA, позволяющий пользоваться расширенными функциями, такими, как встроенная очередность команд (NCQ) и горячая замена. И, если горячая замена на клиентском / домашнем ПК в общем-то некритична, то NCQ - очередь команд может очень даже и пригодиться, ведь HDD с поддержкой NCQ способны принимать несколько запросов одновременно и реорганизовывать порядок их выполнения для достижения максимальной производительности. Особенно актуально это в современной многозадачной среде, когда нередка ситуация запуска нескольких требовательных в скорости диска приложений. Например, пользователь работает с офисной программой, записывает диск и при этом смотрит фильм, а ещё работает торрент-клиент. Аналогичная технология давно использовалась в SCSI-накопителях и вот появилась для широкой пользовательской аудитории. Не будем ей пренебрегать .
Что нужно для включения AHCI.
Прежде чем приступить к включению AHCI-режима, необходимо убедиться в выполнении нескольких важных условий, без которых успешный финал будет невозможен.
- у вас жесткий диск с интерфейсом SATA;
- ваш жесткий диск поддерживает NCQ (проверяем на сайте производителя, обычно современные все);
- системная плата имеет встроенный AHCI-контроллер;
- имеется драйвер под вашу операционную систему.
Если все указанные выше требования выполнены переходим к следующему пункту.
Как включить режим AHCI.
Во-первых, необходимо уяснить, что банальным переключением режима в BIOS с IDE на AHCI (см.картинку) проблему не решить, наоборот, зачастую можно усугубить - получим "синий экран смерти". Далее действуем так:
- Устанавливаем драйвер AHCI вашей системной платы (иногда может называться RAID/AHCI). Если требуется, перезапускаем ПК.
- Запускаем редактор реестра (с правами администратора) и в веткеHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci меняем значение параметра Start c 3 на 0.(см.рисунок).
- Перезагружаем ПК и заходим в BIOS. Меняем режим работы контроллера SATA на AHCI. При загрузке Windows установит драйвер AHCI.
- Ещё раз перезапускаем Windows.
Режим AHCI активирован.
AHCI в Windows 8.
В Windows 8 нет ветки services\msahci, ее заменяетHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci, меняем в ней параметр ErrorControl c 3 на 0, а также вHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci\StartOverride параметр 0 на 0. В остальном действия те же самые. Кроме того, в Windows 8 драйвер AHCI должен установиться автоматически при запуске системы вбезопасном режиме.
Для тех, кто не желает самостоятельно менять реестр, Microsoft выпустила утилитку.Убедиться в успешном переводе накопителей в режим AHCI можно в Диспетчере устройств, там должен появиться контроллер AHCI (см.рисунок ниже).
Как включить AHCI в Windows 8 без переустановки системы.
AHCI режим поддерживается в ОС семейства Windows, начиная с Windows Vista. В старых версиях ОС (таких как Windows XP и т.д.), встроенная поддержка режима AHCI отсутствует и для работы этого режима необходимо устанавливать дополнительные вендоро-зависимые драйвера.
Однако не все было гладко с активацией режима AHCI и в новых ОС Microsoft. В том случае, если система была установлена в обычном (IDE) режиме, драйвер AHCI в системе находится в отключенном состоянии. Это приводит к тому, что на таких системах при включении в BIOS-е режима AHCI на SATA-контроллере, система перестает видеть sata диск (отсутствует необходимый ahci-драйвер) и падает в BSOD (INACCESSIBLE_BOOT_DEVICE). По этой причине производители чипсетов контроллеров (в первую очередь Intel), рекомендуют включать AHCI режим ДОустановки ОС, в этом случае установщик понимает, что чипсетом поддерживается режим AHCI и устанавливает необходимые драйвера (для некоторых чипсетов иногда приходится загружать специфичные AHCI/RAID драйверы непосредственно в процессе установки Windows, например, с usb-флешки или cd/dvd привода).
Примечание. Режим AHCI (Advance Host Controller Interface) позволяет задействовать расширенные возможностей SATA, такие как горячее подключение (Hot-Plugging) и NCQ (native command queuing), позволяющая повысить производительность дисковых операций.
В Windows 8 ситуация с активацией AHCI не поменялась, и если попробовать изменить режима контроллера SATA на AHCI без внесения изменений в саму Windows, это приведет к невозможности загрузится с системного диска. Дело в том, что Windows 8 тоже автоматически не загружает драйвер AHCI для контроллера, который в момент установки системы не находился в AHCI-режиме.
Статья предназначена для тех, кто установил Windows 8 в режиме IDE и хотел бы переключится в режим AHCI без переустановки операционной системы. В том случае, если в BIOS-е (или среде UEFI) уже выставлен режим AHCI, то нет необходимости что-то дополнительно предпринимать — ваша Windows 8 уже поддерживает режим AHCI.
Мы уже описывали как включить поддержку AHCI в Windows 7 без переустановки. Согласно этой статьи необходимо на работающей в обычном (ide) режиме Windows 7 перевести в режим автоматической загрузки стандартный драйвер AHCI (драйвер называется msahci) и лишь затем активировать AHCI в BIOS. Процедура происходила достаточно гладко и в подавляющем большинстве случаев безболезненно.
В Windows 8 (и Windows Server 2012) при попытке включить AHCI режим подобным способом пользователь столкнется с проблемой: ветка HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci в реестре просто-напросто отсутствует. И попытки создать ее вручную ни к чему не приведут.
Дело в том, что Microsoft решило поменять название драйвера, отвечающего за поддержку режима AHCI для SATA контроллеров, заменив его новым драйвером под названием StorAHCI. Стоит отметить, что данный драйвер обладает тем же функционалом и поддерживает те же устройства, что и MSAHCI.
Нам удалось обнаружить два способа активации AHCI после установки Windows 8. Один из которых связан с модификацией реестра, второй – с загрузкой в безопасном режиме.
Включаем AHCI в Windows 8 с помощью реестра.
Чтобы в Windows 8 включить режим AHCI без переустановки системы (которая была установлена в режиме IDE), необходимо внести изменения в системный реестр.
Примечание: еще раз напомним указанную модификацию реестра Windows 8 необходимо производить ДОвключения AHCI в BIOS.
- Откройте редактор реестра (из под учетной записью с правами администратора): нажмите WIN+R и введите regedit
- На запрос системы UAC, ответьте Continue/Yes
- В редакторе реестра найдите и разверните веткуHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci\
- Найдите ключ ErrorControl (его значение будет равно 3), щелкните по нему правой клавишей и выберите Modify (Изменить) и измените его на 0. Нажмите ОК.
Перейдите в ветку StartOverride, найдите ключ с именем 0 (значение по-умолчанию 3). Измените его значение на 0.
Перезагрузите компьютер, во время загрузки системы зайдите в BIOS/UEFI, включите режим AHCI и сохраните изменения. В зависимости от версии BIOS местоположение пункта с настройками контроллера, позволяющего переключаться между режимами IDE – AHCI – (и иногда RAID) может отличаться.
- При следующей загрузке система должна активировать AHCI драйвер и использовать его для работы с SATA диском. Убедится в том, что система теперь использует режим AHCI можно с помощью диспетчера устройств, в котором в разделе IDE ATA/ATAPI controllers должен появится AHCI контроллер (в нашем случае это Standard SATA AHCI Controller).
К сожалению, указанная методика активации драйвера ahci в Windows 8 не всегда работает (не срабатывает примерно в 10-20% случаев). В этом случае рекомендуется воспользоваться официальной инструкцией от Microsoft, доступной в статье базы знаний KB2751461 (http://support.microsoft.com/kb/2751461).
Альтернативный способ включений AHCI в Windows 8.
В том случае, если указанная выше методика не сработала, и Windows 8 не грузится в режиме AHCI, уходя в BSOD или бесконечные попытки восстановить Windows (Attempting repair). Необходимо
- Отключить режим AHCI в BIOS
- Отменить изменения в системном реестре, задав ErrorControl = 3 и StartOverride\0 = 3
- С помощью следующей команды выставим загрузку Windows 8 в безопасном режиме — Safe Mode (как вариант, можно добавить возможность выбора безопасного режима непосредственно в диспетчер загрузки Windows 8).
bcdedit /set {current} safeboot minimal
- Затем систему нужно перезагрузить, вновь зайти в BIOS, переключится в AHCI Mode и сохранить изменения.
- В результате Windows 8 должна загрузится в безопасном режиме и автоматически установить драйвер AHCI.
- Затем нужно отключить загрузку в SafeMode:
bcdedit /deletevalue {current} safeboot
- И перезагрузить Windows
- При следующей загрузке системы система должна загрузится нормально. Осталось убедиться в том, что в диспетчере устройств появился AHCI контроллер.
Чтобы убедиться в том, что производительность дисковой подсистемы Windows 8 за счет режима AHCI увеличилась, запустите обновление индекса производительности Windows (WEI) и проверьте, что значение Disk data transfer rate (скорость обмена информации с диском) повысилось. В нашем примере с 5.2 до 8.1единиц (хотя если быть откровенным существуют и более радикальные способы повышения индекса производительности ).
|