您当前的位置:首页>>技术中心>>数据恢复文章>>正文
 
Linux SCSI 子系统剖析
作者: 来源: 日期:2009-4-7 16:56:58  点击次数:
Small Computer Systems Interface (SCSI) 是一组标准集,它定义了与大量设备(主要是与存储相关的设备)通信所需的接口和协议。 Linux® 提供了一种 SCSI 子系统,用于与这些设备通信。Linux 是分层架构的一个很好的例子,它将高层的驱动器(比如磁盘驱动器或光驱)连接到物理接口,比如 Fibre Channel 或 Serial Attached SCSI(SAS)。本文向您介绍了 Linux SCSI 子系统,并且讨论了这些子系统将来的发展方向。

GNU/Linux 和 SCSI 是很好的一个组合,因为二者在各自的环境中具有类似的特征。GNU/Linux 是一种安全可靠的操作系统,可以不间断地运行。SCSI 适合于可靠和高性能存储。二者都是开源的。您可以下载和查阅 International Committee on Information Technology Standards (INCITS) T10 Technical Committee 的各种 SCSI 规范。同样地,您也可以下载 GNU/Linux 源代码以理解其实现。它们在各自的行业都具有主导性,所以相对其他操作系统而言,GNU/Linux 能更好地支持 SCSI,这一点就不足为奇了。

SCSI 的演化

SCSI 是一种很有趣的接口,它是早期的接口之一,如今还在不断演化。第一种 SCSI 标准称为 SCSI-1,是由 Shugart Associates 在 1979 年前后创建的。SCSI-1 定义了一种具有 5MHz 数据时钟的 8-bit 并行接口,能提供最高 5 兆字节每秒(5 MB/s)的数据传输速率。

SCSI-2 标准出现于 1985 年,它的出现使数据速率更快(10MHz),总线也更宽(16 位)。被称为 Fast/Wide 的 SCSI-2 允许的数据传输速率高达 20 MB/s,并具有与 SCSI-1 的向后兼容性,但是速率也会限制到 SCSI-1 的数据速率。

SCSI-3 的开发开始于 1993 年,现已成为了一组标准集,可以定义协议、命令集和信令方法。在 SCSI-3 中,包含一组命名为 Ultra 的并行 SCSI 标准和基于串行 SCSI 的协议,比如 IEEE 1394 (FireWire)、Fibre Channel, 、Internet SCSI (iSCSI) 和新兴的 SAS。这些标准通过引入存储网络技术(比如 FC-AL 或 iSCSI)改变了传统的存储理念,将数据速率扩展到了 1 Gbit/s,将最大的可寻址设备数增加到了 100 以上,并将最大的电缆长度扩展到了 25 米。图 1 展示了从 1986 至 2007 年 SCSI 的数据速率的变化


图 1. SCSI 数据速率的演化
SCSI 数据速率的演化

SCSI 工作原理

SCSI 实现了一种客户机/服务器风格的通信架构。发起者向目标设备发送命令请求。该目标处理此请求并向发起者返回响应。发起者可以是托管计算机中的一个 SCSI 设备,而 SCSI 目标则可以是一个磁盘、光盘和磁带设备或特殊设备(比如箱体设备)。

SCSI 命令

SCSI 传输所采用的协议已经时过境迁,SCSI 命令却保持了最初的元素。SCSI 命令是在 Command Descriptor Block (CDB) 中定义的。CDB 包含了用来定义要执行的特定操作的操作代码,以及大量特定于操作的参数。

SCSI 命令支持读写数据(各有四个变量)以及很多非数据命令,比如 test-unit-ready(设备是否已就绪)、inquiry(检索有关目标设备的基本信息)、read-capacity(检索目标设备的存储容量)等等。目标设备支持何种命令取决于设备的类型。发起者通过 inquiry 命令识别设备类型。表 1 列出了最常用的 SCSI 命令。


表 1. 常见 SCSI 命令
命令 用途
Test unit ready 查询设备是否已经准备好进行传输
Inquiry 请求设备基本信息
Request sense 请求之前命令的错误信息
Read capacity 请求存储容量信息
Read 从设备读取数据
Write 向设备写入数据
Mode sense 请求模式页面(设备参数)
Mode select 在模式页面配置设备参数

借助大约 60 种可用命令,SCSI 可适用于许多设备(包括随机存取设备,比如磁盘和像磁带这样的顺序存储设备)。SCSI 也提供了专门的命令以访问箱体服务(比如存储箱体内部当前的传感和温度)。更多信息,请参见 参考资料 部分。

本新闻共3页,当前在第1页  1  2  3  


上一篇:Linux系统安全隐患及加强安全管理方法
下一篇:Linux 文件系统剖析
  北京总部: 4006-505-808
  天 津 部: 4006-505-808
  上 海 部: 4006-505-808
  深 圳 部: 4006-505-808
  广 州 部: 4006-505-808
  重 庆 部: 4006-505-808
  南 京 部: 4006-505-808
  其它地区: 4006-505-808
经典案例
中国石油管理局-Oracle数据库恢
中国网通-IBM EXP300磁盘阵列数
大连鸿德经贸有限责任公司-SQL
中国地质环境监测院-HP LH3000
藁城市东街百货-EFS文件解密成
工商银行某省分行-AIX删除LV数
中央电视台新闻评论部-苹果分
promise乔鼎硬盘阵列数据恢复成
麒麟童文化-苹果分区无法打开,
NAS 8100服务器数据恢复成功 
解决方案
raid磁盘阵列OFFLINE后的应急方
磁盘未被格式化,是否格式化数据
误GHOST、误一键恢复灾难应急方
误删除、误格式化数据灾难应急
LINUX FSCK数据出错灾难应急方
北亚数据恢复 - 联系我们 - 关于北亚 - 友情链接 - 网站地图 - RSS聚合 
版权所有 北亚数据恢复中心
全国统一客服热线:4006-505-808
北京总部:北京市海淀区中关村大街11号E世界A座8层832B室