stringtranslate.com

Interfaz avanzada del controlador de host

La interfaz avanzada de controlador de host ( AHCI ) es un estándar técnico definido por Intel que especifica la interfaz a nivel de registro de los controladores de host Serial ATA (SATA) de una manera no específica de implementación en sus conjuntos de chips de placa base . [1]

La especificación describe una estructura de memoria del sistema para que los proveedores de hardware intercambien datos entre la memoria del sistema host y los dispositivos de almacenamiento conectados . AHCI ofrece a los desarrolladores de software y diseñadores de hardware un método estándar para detectar, configurar y programar adaptadores SATA/AHCI. AHCI está separado del estándar SATA 3 Gbit/s, aunque expone las capacidades avanzadas de SATA (como el intercambio en caliente y la cola de comandos nativa ) de modo que los sistemas host puedan utilizarlas. Para las unidades de estado sólido modernas , la interfaz ha sido reemplazada por NVMe . [2]

La versión actual de la especificación es 1.3.1.

Modos de funcionamiento

Muchos controladores SATA ofrecen modos de operación seleccionables: emulación ATA paralela heredada (más comúnmente llamada modo IDE), modo AHCI estándar (también conocido como modo nativo) o RAID específico del proveedor (que generalmente habilita AHCI para aprovechar sus capacidades). ). Intel recomienda elegir el modo RAID en sus placas base (que también habilita AHCI) en lugar del modo AHCI/SATA para obtener la máxima flexibilidad. [3] El modo heredado es un mecanismo de compatibilidad con versiones anteriores de software destinado a permitir que el controlador SATA se ejecute en sistemas operativos heredados que no son compatibles con SATA o donde no existe un controlador para que el sistema operativo sea compatible con SATA.

Cuando un controlador SATA está configurado para funcionar en modo IDE, la cantidad de dispositivos de almacenamiento por controlador generalmente se limita a cuatro (dos canales IDE, dispositivo maestro y dispositivo esclavo con hasta dos dispositivos por canal), en comparación con el máximo de 32 dispositivos. /ports cuando se configura en modo AHCI. [4] [1] Pero las interfaces SATA del chipset pueden emular más de un "controlador IDE" cuando se configuran en modo IDE.

Soporte del sistema operativo

AHCI es compatible de fábrica con Windows Vista y versiones posteriores, sistemas operativos basados ​​en Linux (desde la versión 2.6.19 del kernel ), OpenBSD (desde la versión 4.1), NetBSD (desde la versión 4.0), FreeBSD (desde la versión 8.0), [5] macOS , GNU Mach , ArcaOS , [6] eComStation (desde la versión 2.1) y Solaris 10 (desde la versión 8/07). [7] DragonFlyBSD basó su implementación AHCI en OpenBSD y agregó características extendidas como soporte para multiplicador de puertos. Las versiones anteriores de los sistemas operativos requieren controladores específicos de hardware para ser compatibles con AHCI. Windows XP y versiones anteriores no ofrecen compatibilidad con AHCI de fábrica.

Problemas de arranque de la unidad del sistema

Algunos sistemas operativos, en particular Windows Vista , Windows 7 , Windows 8 , Windows 8.1 y Windows 10 , no se configuran para cargar el controlador AHCI al arrancar si el controlador SATA no estaba en modo AHCI en el momento en que se instaló el sistema operativo. Aunque esta es una condición fácilmente rectificable, sigue siendo un problema constante con el estándar AHCI.

El síntoma más frecuente para un sistema operativo (o sistemas) que están instalados en modo IDE (en algunas implementaciones de firmware de BIOS, también llamado "modo IDE combinado"), es que la unidad del sistema normalmente no arranca, con el consiguiente mensaje de error, si el controlador SATA (en BIOS) cambia inadvertidamente al modo AHCI después de la instalación del sistema operativo. En Microsoft Windows, el síntoma es un bucle de inicio que comienza con un error de pantalla azul, si no se soluciona.

Técnicamente hablando, este es un error de implementación con AHCI que se puede evitar, pero aún no se ha solucionado. Como solución provisional, Intel recomienda cambiar el controlador de la unidad a AHCI o RAID antes de instalar un sistema operativo. [3] (También puede ser necesario cargar controladores AHCI o RAID específicos del chipset en el momento de la instalación, por ejemplo desde una unidad flash USB).

En Windows Vista y Windows 7, esto se puede solucionar configurando el msahcicontrolador del dispositivo para que se inicie en el momento del arranque (en lugar de bajo demanda). Configurar el modo no AHCI (es decir, IDE o modo combinado) en el BIOS permitirá al usuario iniciar Windows y, por lo tanto, se podrá realizar el cambio de registro requerido. En consecuencia, el usuario tiene la opción de continuar usando el sistema en modo Combinado o cambiar al modo AHCI. [8] Entre otras cosas, con Windows 10 y 8, esto se puede solucionar forzando la recarga de los controladores correctos durante el modo seguro . [9]

En Windows 8, Windows 8.1 y Windows Server 2012 , el controlador del controlador ha cambiado de msahcia storahci, [10] y los procedimientos para actualizar al controlador AHCI son similares a los de Windows 7. [11] En Windows 8, 8.1 y Windows Server 2012, cambiar del modo IDE al modo AHCI sin actualizar primero el registro hará que la unidad de arranque sea inaccesible (es decir, dará lugar a un bucle de arranque recurrente, que comienza con un error de pantalla azul).

En Windows 10, después de cambiar el controlador al modo AHCI, si se permite que el sistema operativo se reinicie un par de veces después del inicio del ciclo de inicio, que comienza con un BSOD INACCESSIBLE_BOOT_DEVICE, Windows presenta opciones de recuperación. Fuera de las opciones avanzadas, si se selecciona la opción Reparación de inicio, Windows intenta solucionar el problema y la PC comienza a funcionar normalmente.

Un problema similar puede ocurrir en sistemas Linux si el controlador AHCI se compila como un módulo del kernel en lugar de estar integrado en la imagen del kernel , ya que es posible que no esté incluido en el initrd (disco RAM inicial) creado cuando el controlador se configura para ejecutarse en Legacy. Modo. La solución es crear un nuevo initrd que contenga el módulo AHCI o crear el controlador AHCI en la imagen del kernel. [12]

Gestión de energía

La administración de energía es manejada por el protocolo Aggressive Link Power Management (ALPM).

Ver también

Referencias

  1. ^ ab "Serial ATA AHCI: Especificación, Rev. 1.3.1". Intel Corp. Consultado el 3 de mayo de 2015 .
  2. ^ "NVMe frente a SATA: ¿Qué tecnología SSD es más rápida?". www.howtogeek.com . Consultado el 10 de octubre de 2020 .
  3. ^ ab "Tecnología Intel Matrix Storage: cambio y/o elección de modos Serial ATA". Intel . Consultado el 30 de septiembre de 2007 .
  4. ^ "Especificación del controlador PCI IDE 1.0" (PDF) . Diseño de software Berg . Consultado el 3 de mayo de 2015 .
  5. ^ "Ahci(4)".
  6. ^ "Registro de cambios de ArcaOS" . Consultado el 24 de agosto de 2020 .
  7. ^ "Novedades de la versión Solaris 10 8/07: mejoras del controlador". Oráculo. Archivado desde el original el 25 de octubre de 2007 . Consultado el 20 de octubre de 2010 .
  8. ^ "Mensaje de error al iniciar una computadora con Windows 7 o Windows Vista después de cambiar el modo SATA de la unidad de arranque:" STOP 0x0000007B INACCESSABLE_BOOT_DEVICE"". Microsoft. Archivado desde el original el 24 de mayo de 2011 . Consultado el 20 de abril de 2011 .
  9. ^ "Habilitar el modo AHCI DESPUÉS de la instalación de Windows 10". Usuario de tenforums.com Toobad . Consultado el 19 de diciembre de 2015 .
  10. ^ "StorAHCI reemplaza a MSAHCI (Windows)". Microsoft.
  11. ^ "Mejora del rendimiento de las unidades SATA en Windows 2012".
  12. ^ "Soporte | Cómo habilitar la compatibilidad con AHCI después de la instalación". Novell.com . Consultado el 11 de mayo de 2014 .

enlaces externos