Главная Жесткий диск, SSD AHCI, или как использовать преимущества SATA

AHCI, или как использовать преимущества SATA

от admin

Протокол AHCI

Контроллер SATA согласно требованиям этого стандарта должен поддерживать как минимум два режима работы. Первый – режим эмуляции стандартного контроллера ATA. В этом режиме контроллер полностью повторяет протокол обращения к жесткому диску ATA, и с точки зрения операционной системы и драйверов не отличается от контроллера «параллельного» интерфейса. При этом подключенные к нему винчестеры эмулируются либо как устройства Master на отдельном канале, либо, если операционная система «не понимает» более двух каналов – как пары устройств Master и Slave. Этот режим включен по умолчанию, он полностью поддерживается всеми операционными системами и BIOS.

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

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

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

Вместе с тем теряется совместимость с программным обеспечением, не поддерживающим SATA изначально. Работать в двух режимах одновременно контроллер не может. Переключаясь в режим Native, он теряет возможность принимать команды от программного обеспечения, не «понимающего» протокол AHCI.

Опять эта Windows

Таким программным обеспечением, как ни странно (или что неудивительно), является операционная система Windows. Как признаются разработчики этой операционной системы в специальном документе, дисковая подсистема всех версий Windows, вышедших до версии Vista, поддерживать AHCI не будут. Объясняют они это наличием особенностей в реализации AHCI производителями разных контроллеров. В будущем в ядре Windows будет реализован новый механизм подключения драйверов – Ataport, и в составе драйверов будет идти стандартный минипорт для Native-режима контроллера SATA. А пока, увы, нужно устанавливать специальный драйвер или SCSI-минипорт непосредственно от производителя контроллера.

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

0 комментарий
0

Еще статьи