Mengapa perangkat SATA saya muncul di bawah / proc / scsi / scsi?

10

Saya memiliki 3 perangkat SATA di sistem saya. Mereka muncul di bawah /proc/scsi/scsi, meskipun ini bukan perangkat SCSI. Mengapa perangkat SATA saya muncul di bawah direktori 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
Stefan Lasiewski
sumber

Jawaban:

18

Mereka muncul sebagai perangkat SCSI karena driver berbicara SCSI ke lapisan kernel berikutnya (driver disk generik). Ini sebenarnya tidak berlaku untuk semua driver SATA pada semua versi kernel dengan semua konfigurasi waktu kompilasi kernel, tetapi itu umum. Bahkan perangkat PATA dapat muncul sebagai SCSI pada level itu (sekali lagi, itu tergantung pada versi kernel dan konfigurasi waktu kompilasi kernel, serta apakah ide-scsimodul digunakan).

Tidak masalah apakah pengemudi berbicara SCSI ke perangkat fisik. Seringkali, memang demikian. ATAPI , digunakan untuk berbicara dengan drive optik PATA / SATA dan perangkat lain, adalah enkapsulasi protokol berbasis SCSI. Namun, disk PATA / SATA tidak menggunakan ATAPI. The libata set driver juga termasuk penerjemah antara perintah ATA set dan SCSI sehingga Anda dapat menempatkan disk PATA / SATA bawah payung subsistem SCSI. Antarmuka ide yang terpisah di dalam kernel lebih merupakan peninggalan sejarah.

Anda akan melihat bahwa disk USB juga muncul sebagai SCSI, untuk alasan yang sama (dan mereka juga berbicara SCSI di bus USB). Hal yang sama berlaku untuk Firewire .

Gilles 'SANGAT berhenti menjadi jahat'
sumber
Apakah banyak perangkat IDE berbicara SCSI, dan apakah mereka muncul di bawah /proc/scsi? Di sistem lain, saya memiliki drive DVD IDE yang terdaftar di bawah /proc/ide/hdb/model.
Stefan Lasiewski
@Stefan: Semua perangkat keras IDE non-kuno berbicara SCSI ke controller. Semua (saya pikir) driver IDE dapat berbicara SCSI (atau mungkin saya harus mengatakan melihat SCSI) ke lapisan disk generik jika dikompilasi sesuai, tetapi mereka (dan beberapa driver SATA) juga dapat terlihat seperti IDE.
Gilles 'SANGAT berhenti menjadi jahat'
Gilles, bisakah Anda mengatur lapisan (dari hw ke lapisan atas Linux)? Saya kira kita memiliki sesuatu seperti: perangkat (drive fisik), pengontrol host SATA (PHY HBA), driver tingkat rendah (menerima perintah SCSI, berbicara dengan PHY HBA), pemain tengah SCSI-core (scsi_mod.ko), libata ATAU scsi-disk -driver (sd_mod.ko), blok (tersedia melalui / dev / sdX). Apa kamu setuju?
Totor
Maksud saya "bisakah Anda sebutkan " ...
Totor