Advanced Host Controller Interface (AHCI)
AHCI to specyfikacja, która określa sposób programowania kontrolerów Serial ATA, ale nie definiuje samej implementacji. Dokumentacja dotycząca protokołu AHCI została opublikowana przez firmę Intel w maju 2003 roku, a najnowsza wersja 1.3 została opracowana w czerwcu 2008 roku.
Specyfikacja AHCI opisuje strukturę pamięci systemowej, aby zorganizować komunikację oraz zapewnić płynny przepływ danych pomiędzy pamięcią systemową a podłączonymi urządzeniami magazynującymi, takimi jak dyski SATA. Jest ona używana przez programistów i producentów sprzętu komputerowego jako standard do wykrywania, konfigurowania i programowania adapterów SATA/AHCI. Warto zauważyć, że AHCI nie obejmuje standardu Serial ATA II, ale obsługuje zaawansowane funkcje SATA, takie jak hot-plug oraz NCQ.
Wiele kontrolerów SATA oferuje różne tryby pracy, takie jak ATA (znany również jako IDE lub PATA), standardowy tryb AHCI lub tryb RAID, w zależności od producenta. Aby zapewnić maksymalną elastyczność, Intel rekomenduje korzystanie z trybu RAID w swoich płytach głównych, ponieważ działa on również jako standardowy AHCI, zamiast tradycyjnego trybu AHCI/SATA. Tego rodzaju zalecenie wynika z częstych problemów związanych z systemem operacyjnym Microsoft Windows podczas zmiany trybu pracy AHCI po zainstalowaniu systemu.
Tryb PATA oferuje wsteczną kompatybilność dla kontrolerów SATA w systemach operacyjnych, które nie obsługują standardu SATA (np. Windows 95, Windows 98, Windows Me) lub w systemach, które wymagają dodatkowych sterowników (np. Windows 2000, Windows XP).
Systemy operacyjne a współpraca z AHCI
Microsoft Windows:
- Windows Vista, Windows 7, Windows 8, Windows 10 – pełne wsparcie
- Wcześniejsze wersje Windows wymagają dodatkowych sterowników lub nie obsługują AHCI
Linux (od wersji jądra 2.6.19) – pełne wsparcie
NetBSD (niektóre wersje) – obsługuje AHCI bez potrzeby instalacji dodatkowych sterowników
OpenBSD (od wersji 4.1) – wspiera sterownik AHCI
FreeBSD – obsługuje AHCI
Mac OS X (Intel) – wymaga AHCI
Solaris 10 – wsparcie dla AHCI wprowadzone w wydaniu 8/07
Starsze systemy operacyjne wymagają sterowników dostosowanych do konkretnego urządzenia w celu obsługi AHCI.
Problemy z systemami Windows
Włączenie trybu AHCI w BIOS-ie może prowadzić do problemów z aktualnie zainstalowanym systemem operacyjnym, co często wymusza jego reinstalację. Microsoft Windows XP wymaga dodatkowego sterownika, który może być dostarczony na przykład z osobnej dyskietki podczas instalacji systemu z włączonym AHCI. Niewłaściwy sterownik lub jego brak mogą skutkować błędem „0x7B BSOD STOP error”. Przełączenie na tryb AHCI wymaga wcześniejszego zainstalowania odpowiednich sterowników w systemie operacyjnym przed dokonaniem zmian w BIOS-ie. W przypadku wystąpienia błędu 0x7B, zazwyczaj przywrócenie wcześniejszego ustawienia (zwanego zazwyczaj IDE lub ATA) w BIOS-ie rozwiązuje problem. Niektóre nowsze wersje Windows XP oferują ograniczone wsparcie dla AHCI/SATA. Od wersji Windows Vista sterowniki IDE/ATA oraz AHCI są zintegrowane z systemem, co umożliwia przełączanie w BIOS-ie z trybu IDE/ATA na AHCI bez potrzeby podejmowania dodatkowych działań w systemie.
Zobacz też
- EHCI
- OHCI
- UHCI