少し後ですが、他の人にとっては役立つかもしれません。
いくつかの説明を追加しましょう。AHCI インターフェイス (Advanced Host Controller Interface) を備えた SATA ホスト コントローラーがあります。また、SATA ドライブ (または AHCI インターフェイスを備えたその他のデバイス) もあります。
SATA ホスト コントローラー (HC) には多数のポートがあります。理論的には、最大 32 個の SATA ポートが存在する可能性がありますが、少なくとも 1 個は存在する可能性があります (ポートがない場合、HC 自体は意味がありません)。実際のポートの数は実装によって異なります。PC で使用される一般的な HC チップには、1 つまたは 2 つのポートがある可能性が高くなります。SATA ドライブはポートに接続されています。したがって、SATA HC に 2 つのポートがある場合、最大 2 つの SATA ドライブ/デバイスを接続できます。
実生活では、すべてがさらに興味深いものです。コメントで@Ross Ridgeが言及したように、ポート乗数を使用できます。Port Multiplier は、接続できるデバイスの数を増やすことです。ここでも、ポート マルチプライヤーは、SATA HCポート(ホスト コントローラー自体ではなく) に接続されたデバイスです。1 つのポートに 1 つの乗算器。2 番目の乗算器は、他のポートなどに接続できます。乗算器のサポートは実装で定義されます。一部の HC はそれらと連携できますが、一部の HC はそうでない場合があります。乗算器には 16 個のポートがあります。ポート '0xF' は乗算器の特別な制御ポートです。そのため、最大 15 台のデバイスを接続できます。
したがって、上記はすべてSATA仕様に関するものです。リストされた質問自体を考慮すると:
OS ドライバーは独自の方法でドライブを列挙して名前を付けることができます。あなたが言及したようにSecondary IDE Channel
、またはATA Channel 1
。最初の名前は、パラレル インターフェイスを備えたドライブのレガシーである可能性が高いです。実際、「チャネル」という言葉は SATA AHCI 仕様にもありません。ポートがあります:)
一部の fu... ドライバーは、乗算器をサポートしていない、または 1 つのポートでしか動作しないなど、「ソフトウェアの制限」を暗示している可能性があります。ドライバーを定期的に更新します。
thus providing Windows with a way to change such options like enable/disable DMA mode
. Windows DMA モードは、SATA ドライブとは関係ありません。SATA ホスト コントローラーは、特別なバッファーを使用して、ドライブから受信したデータを割り当てます。DMA mode
この場合、OS がこれらのバッファにアクセスする方法に似ていますが、HC が接続されたドライブと通信する方法には似ていません。
Also can you tell me what is the maximum number of ATA Channels that SATA controller can have?
. ポートがあります。ポートの数は実装定義です。マザーボードの読み取りCAP
レジスタで SATA ホスト コントローラのアドレスがわかっている場合、下位 4 ビットはNumber of Ports - 1
. PS: 物理メモリに直接アクセスするにはドライバが必要なので...