web-dev-qa-db-ja.com

SATAデバイスが/ proc / scsi / scsiの下に表示されるのはなぜですか?

システムに3つのSATAデバイスがあります。これらはSCSIデバイスではありませんが、/proc/scsi/scsiの下に表示されます。 SATAデバイスがSCSIディレクトリの下に表示されるのはなぜですか?

$ cat /proc/scsi/scsi 
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: WDC WD2500AAJS-6 Rev: 01.0
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: TSSTcorp Model: CDDVDW TS-H653Z  Rev: 4303
  Type:   CD-ROM                           ANSI  SCSI revision: 05
Host: scsi4 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: ST3320620AS      Rev: 3.AA
  Type:   Direct-Access                    ANSI  SCSI revision: 05
10

ドライバが次のカーネル層(汎用ディスクドライバ)に [〜#〜] scsi [〜#〜] を話すため、これらはSCSIデバイスとして表示されます。これは実際にはすべてのカーネルに当てはまるわけではありません [〜#〜] sata [〜#〜] すべてのカーネルコンパイル時構成のすべてのカーネルバージョンのドライバーですが、一般的です。 [〜#〜] pata [〜#〜] デバイスでさえ、そのレベルではSCSIとして表示される可能性があります(これも、カーネルバージョンとカーネルコンパイル時の構成、およびide-scsiモジュールが使用されます)。

ドライバが物理デバイスとSCSIを話すかどうかは実際には問題ではありません。多くの場合、そうです。 [〜#〜] atapi [〜#〜] は、PATA/SATAオプティカルドライブやその他のデバイスとの通信に使用され、SCSIベースのプロトコルカプセル化です。ただし、PATA/SATAディスクはATAPIを使用しません。 libata ドライバーのセットには、ATAコマンドセットとSCSIの間に translator も含まれているため、PATA/SATAディスクをSCSIサブシステムの傘下に配置できます。カーネル内の個別のideインターフェースは、より歴史的な生き残りです。

同じ理由で、 SBディスク もSCSIとして表示されることに気付くでしょう(そして、USBバスでもSCSIを話します)。同じことが Firewire にも当てはまります。