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

[复制链接]

该用户从未签到

37

主题

79

回帖

1253

积分

[INTOHARD]工兵

Rank: 1

积分
1253
发表于 2008-9-28 21:58:29 | 显示全部楼层 |阅读模式
实用:教你看懂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,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。

该用户从未签到

0

主题

23

回帖

57

积分

[INTOHARD]班长

Rank: 2

积分
57
发表于 2010-8-29 16:19:15 | 显示全部楼层
回复 1# 狂妄嚣张


    very good!
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2015-6-3 19:26
  • 签到天数: 95 天

    [LV.6]五品郎中

    21

    主题

    636

    回帖

    737

    积分

    [INTOHARD]连长

    Rank: 4

    积分
    737
    发表于 2010-9-22 00:43:15 | 显示全部楼层
    不错  正学习呢
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    23

    回帖

    59

    积分

    [INTOHARD]班长

    Rank: 2

    积分
    59
    发表于 2010-9-23 09:24:34 | 显示全部楼层
    回复 1# 狂妄嚣张


        good!good!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表