AHCI
Advanced Host Controller Interface
AHCIは、ソフトウェア(大抵はOS)がSATAデバイスと通信できるようにする業界標準のストレージインタフェースだ。
古くから使われてきたパラレルATA(PATA)やIDE(Integrated Drive Electronics)インタフェースの代わりとして、2004年にIntelが導入した。
ストレージとメモリ間のデータ交換などについて定義されている
これによりシステム設計の負担を減らし、また、NCQやホットスワップなどの高度な機能が利用できるようになる
AHCIはあくまでホストコントローラ自体の規格でありSATAの通信規格とは独立である
https://www.youtube.com/watch?v=B0g54VZAwmk
IDEはコンピュータにハードディスクとかを接続するための規格
AHCIをサポートしていないWindows XPなどの時にこのモードを使う 物理的なケーブル本数を減らすために(?規格の更新も見越していたかも)SATAという接続規格になった SATAはIDEと違ってケーブルが1本
https://gyazo.com/bbf4d8929bab29001d8a97b9d75d61ee
初期のSATAは従来のATA/IDE(いわゆるパラレルATA)からの互換性のため、コマンド体系やドライバ仕様などのインターフェース仕様の多くも旧来のものを引き継いでいた。
つまりケーブルは変わるけどソフト的なところは変わってなかった(?)
AHCIではSATA本来の性能を引き出すため、これらの仕様を一新してSATA専用のものに切り替えた。 AHCIを利用するには、コンピュータ本体のチップセットなどに内蔵されているSATAコントローラや接続するストレージ装置、オペレーティングシステム(OS)のドライバなどがすべてAHCIに対応している必要がある。
AHCIによって便利になること
コンピュータの電源を切らずにUSBケーブルを外したりできる
HDDのヘッドがより効率的に動かせる(1:50)
https://gyazo.com/9b5de3c4841ae22a277b840f3c71980f
順番を無視してとってこれる
SSDでも早くなる
新しいドライブの特性を考慮して設計されているので(just plain being designed with more modern drives in mind)、特に大きなファイルのやり取りで早くなる
AHCIの次はNVMe
AHCIはSATA接続のHDDに向けて最適化されているが、物理的な構造が全く異なるSSDに対して十分な性能を引き出していないという問題があった。
そこでSSDに最適化された新たな論理インターフェースであるNVMeが開発されることとなった。