定义

高级主机控制器接口

高级主机控制器接口,简称AHCI,是一种使软件能够与串行ATA(串行ATA)通信的接口技术标准。萨塔)设备。这些外围组件相互连接(PCI类设备在系统内存和SATA存储介质之间移动数据。

历史/发展

2004年,Intel发布了AHCI规范,定义了AHCI的功能行为和软件接口。该规范还提供了编写SATA-AHCI适配器的标准方法。

该规范是由AHCI贡献者小组开发的,该小组由硬件、软件和OEM供应商组成,并由英特尔担任主席。这些公司包括AMD、戴尔、Marvell、Maxtor、微软、红帽、希捷和StorageGear。

AHCI是SATA II技术发展势头的重要组成部分,它提供了一个标准控制器接口,优化了旧的集成驱动电子(Integrated Drive Electronics)无法提供的高级SATA功能。IDE)标准接口。版本1.3.1是AHCI规范的最新版本。

AHCI是如何工作的

默认情况下,大多数主板在统一可扩展固件接口(UEFI)或BIOS。旧的主板可能默认启用IDE模式,在安装操作系统(OS)之前需要切换到AHCI。

AHCI在Windows Vista和更高版本的Windows上支持;从2.6.19版本开始的Linux;OS X;以及各种开源操作系统,如OpenBSD、NetBSD和FreeBSD。虽然Windows Vista和Windows 7包含AHCI驱动程序,但如果启动驱动器的控制器没有启用AHCI,这些操作系统将不会安装AHCI。

SATA硬盘和固态硬盘(ssd)提供几种操作模式:IDE、AHCI或突袭,通常启用了AHCI。然而,一旦安装了操作系统,将BIOS设置从IDE模式切换到AHCI并不容易。Windows有一个注册表工作区,将允许在操作系统安装后启用AHCI。较老的操作系统版本需要硬件特定的驱动程序来支持AHCI。

作为一种为硬盘和磁带开发的传统存储协议,AHCI被设计用于管理单个存储请求队列。对于AHCI,这队列有深度——在端口队列中可以一直等待服务的I/O请求的数量——32个命令。

AHCI的优点和缺点

AHCI支持高级SATA特性,例如热插拔本机命令队列(NCQ)。热插拔可以在不关闭计算机的情况下,将SATA硬盘切换出来。

NCQ优化了ssd和硬盘同时处理数据请求的方式,最大限度地减少读写头的移动,并使用AHCI加速硬盘的访问时间。在ssd硬盘上,NCQ可以提高大文件传输性能。

AHCI的一个缺点是与ssd一起使用时的高延迟,因为该规范是为旋转存储介质而开发的闪光.此外,AHCI有限的队列深度意味着I/O请求的数量很容易成为瓶颈。为了避免I/O请求因为超过队列深度而失败,需要进行额外的管理。

AHCI与NVMe

非易失性内存表达式(NVMe)是为NAND闪存和高性能ssd开发的通信接口,使用PCI Express (作为PCIe)卡槽技术。

因为NVMe是专门为ssd开发的,所以它比AHCI快得多,减少了延迟并提供了更好的IOPS。具体来说,NVMe显著增加了I/O队列的数量,队列深度可达65,000。

这是最近更新的2018年1月

关于AHCI (Advanced Host Controller Interface)

深入挖掘数据存储管理

搜索灾难复苏
搜索数据备份
搜索聚合基础设施
关闭
Baidu