SATA和SCSI linux区别

来源:互联网 发布:无线鼠标 知乎 编辑:程序博客网 时间:2024/05/01 15:16

1.大多数现代桌面系统都有存储设备(硬盘和CD/DVD驱动器),这些设备通常连接在Serial ATA总线上,而不是老旧的IDE(带状电缆)总线上。

在Linux中对SATA的支持是用一个叫作libata的层实现的,这个层则位于SCSI子系统之下。正因为如此,在SCSI驱动配置中可以找到SATA驱动。此外,你的存储设备也会被当作SCSI设备对待,这意味着你同样需要SCSI硬盘/光驱的支持特性。你的SATA硬盘会被叫做(例)/dev/sda而你的SATA上的CD/DVD驱动器则会以(例)/dev/sr0命名。

虽然,大多数此类驱动程序是为了SATA控制器而写的,但是,libata却不仅仅只是为了SATA标准而设计的。在不远的将来,所有常见的IDE驱动都将会被移植到libata上来;而现在的情况下,以上这个说法对IDE用户也是适用的。

代码 3.1: libata的配置选项

Device Drivers  ---> SCSI device support  --->  <*> SCSI device support  <*>   SCSI disk support  <*>   SCSI CDROM support  SCSI low-level drivers  --->   <*> Serial ATA (SATA) support    在上面这些选项以下列出的选项中选出你自己的芯片组。

2.
Scsi bus的协议实际上很多设备都在用,它分了三层吧
以SCSI Disk为例,这三层共同构成了一个block device driver


High level sd st sg(向用户空间导出的各种设备)
Mid level                   scsi_mod(SCSI协议的实现)
Low level                  这一层可以把接收到的SCSI命令转换成sata/usb的命令,当然如果是SCSI设备的话就可以直接发下去了

原创粉丝点击