» 您尚未 登录   注册 | 社区服务 | 帮助 | 社区 | 无图版


常州五颜六色网络技术有限公司 -> 技术文档 -> 教你看懂SCSI卡里的错误提示
 XML   RSS 2.0   WAP 

--> 本页主题: 教你看懂SCSI卡里的错误提示 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题
阿七




该用户目前不在线
级别: 未验证会员
精华: 0
发帖: 909
威望: 0 点
金钱: 2161 RMB
贡献值: 0 点
在线时间:512(小时)
注册时间:2006-03-29
最后登录:2008-08-07
查看作者资料 发送短消息 推荐此帖 引用回复这个帖子

教你看懂SCSI卡里的错误提示

有人问用SCSI卡里的工具时有时候会出现一些错误信息,怎么能看明白?

这里简单说一下,卡里出现的信息往往是对SCSI卡操作过程中的产生的,自带的工具和电脑程序通过ASPI对卡操作是一样的,这牵扯到ASPI的调用函数,ASPI的函数有7个:

1,00H,适配器咨询
2,01H,获取设备类型
3,02H,执行SCSI命令
4,03H,终止SCSI命令
5,04H,复位SCSI设备,
这点要说明的是,由于SCSI是多任务处理,如果出错只能终止相应的SCSI命令而不能复位SCSI适配器,强制复位会导致所有的正在处理的任务全部停止运行,上面我贴出的格式化程序里就没有使用任何复位和终止命令,所以,即使在DOS中SCSI设备格式化进程运行的同时可以干别的工作。
6,05H,设置适配卡的参数
7,06H,取得设备的信息。

函数命令执行过程中程序就进入监控过程,监控程序将从ASPI获得的状态字节来判断运行情况,状态字节最常用的有7种:

1,00H,正在处理中。
2,01H,处理成功。
3,02H,SRB被主机取消
4,04H,出错
5,80H,无效的SRB
6,81H,无效的适配器
7,82H,无效的SCSI设备或者设备没有找到。

SRB。SRB是什么东西?SRB是由8个字节组成的头标,它包含一定的参数,参数不同,SRB的功能也不一样。

在实际编程操作过程中,对于SRB的状态一定要不断的进行查询,一直到它的值从开始的00H(处理中)变成不是00H(其他状态码)为止。

说明:很多人好象不关心这写基础的东西,总问怎样修改设备的什么LOGO和序列号。不明白LOGO是什么东西?是不是制造商和产品型号?现在就这个问题简单说一下,过程从略,希望大家知道可以从编写FIRMWARE并修改FIRMWARE响应的区域就行了。

一般在FIRMWARE中,每个BLOCK都做了CHECKSUM和CRC检查,预防复制过程中出现错误,错误的FIRMWARE会导致升级设备的失败或者设备损坏,升级操作程序一般不做这个检查,这种检查是FIRMWARE在硬盘里运行时自己检查自身的。具体算法不能多说了,举个例子说明吧,拿IBM的厂家的一款硬盘为例(随便举的例子用来学习使用,不要用以实验,后果自负,还要说明一点,可能看到的代码是乱码,那是经过加密变换了的,还要解秘变换才能看到内容),如果要修改VID和PID:[IBM IC35L146UWDY10-0],相应的BLOCK的CHECKSUM和CRC检查代码为1011387F,如果将VID和PID改成了[STOL STOL.COM.CN]那么相应的BLOCK的CHECKSUM和CRC检查代码就应该改变为0C3E1A5E。

[楼 主] | Posted: 2007-05-30 10:19 顶端

常州五颜六色网络技术有限公司 -> 技术文档



Copyright © 2005-2009 5y6s Inc. 苏ICP备05001866号 Powered by PHPWind 5.0.1
Total 0.017269(s) query 4, Gzip enabled
会员言论不代表本站立场 本站法律顾问:北京汇泽律师事务所 韩律师
QQ:点击这里给我发消息 /点击这里给我发消息 /点击这里给我发消息