hswqs
驱动小牛
驱动小牛
  • 注册日期2001-03-27
  • 最后登录2012-03-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:3214回复:18

有无usb移动硬盘故障诊断工具

楼主#
更多 发布于:2002-06-14 16:32
在win2k下,usbstor.sys驱动程序加载正常,能判断主机在发送rbc  read(10)命令(而且用windriver仿真返回数据也正确),但资源管理器中无盘符出现,却又无法知道问题出在何处。

不知有没有诊断程序,能报告问题所在。

[编辑 -  6/14/02 by  hswqs]
hswqs
驱动小牛
驱动小牛
  • 注册日期2001-03-27
  • 最后登录2012-03-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-06-14 17:02
除INQUIRY,READ10,WRITE10,READ CAPACITY外,还有哪些命令是必须的。
laiqing
驱动小牛
驱动小牛
  • 注册日期2002-02-27
  • 最后登录2013-08-28
  • 粉丝5
  • 关注0
  • 积分46分
  • 威望104点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-06-14 17:11
还有OnOffUnit、Verify、ModeSelect、ModeSense、TestUnit、RequestSense、SyncCache、
hswqs
驱动小牛
驱动小牛
  • 注册日期2001-03-27
  • 最后登录2012-03-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-06-14 17:16
在  OnOffUnit、Verify、TestUnit、SyncCache  这些命令中,似乎可以不做什么实质性的操作。
RequestSense  好象可以不用
ModeSelect、ModeSense、我不知道在系统完成初始化之前(显示盘符),必须先支持这两个命令吗。
hswqs
驱动小牛
驱动小牛
  • 注册日期2001-03-27
  • 最后登录2012-03-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-06-17 13:06
问题解决了一些,现在盘符出来了(可时间过长),同时读取数据的时间太长(写数据还为搞定)。

是不是在读写硬盘时有什么需要注意的地方?
请各位大虾指点一二!

[编辑 -  6/17/02 by  hswqs]
panda_lu8888888
驱动小牛
驱动小牛
  • 注册日期2002-06-03
  • 最后登录2002-07-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-06-17 15:12
hswqs老兄,能否告知在盘符出来之前,PC和设备之间完成了那些通讯??
风儿
hswqs
驱动小牛
驱动小牛
  • 注册日期2001-03-27
  • 最后登录2012-03-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-06-17 15:35
写数据也同样地慢,比正常速度慢20倍左右。
是否会是读写硬盘的指令造成的?
状态控制程序应该不会使读写慢这么多吧?

panda_lu88888888:
PC首先读取USB设备配置信息-->0x08,0x06,0x50(相应配置),加载usbstor.sys -->发送Bulk-Only Mass Storage Reset,Get Max LUN 指令 -->PC发送Inquiry得到设备信息,USB设备处理一些杂命令-->PC发送READ_10命令从硬盘读取相关数据
panda_lu8888888
驱动小牛
驱动小牛
  • 注册日期2002-06-03
  • 最后登录2002-07-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-06-18 14:09
请问usbstor.sys是你们自己写的吗???
风儿
hswqs
驱动小牛
驱动小牛
  • 注册日期2001-03-27
  • 最后登录2012-03-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-06-18 14:34
不是,是2K自带
clear_zcl
驱动牛犊
驱动牛犊
  • 注册日期2002-05-30
  • 最后登录2002-07-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2002-06-19 17:32
写数据也同样地慢,比正常速度慢20倍左右。
是否会是读写硬盘的指令造成的?
状态控制程序应该不会使读写慢这么多吧?

panda_lu88888888:
PC首先读取USB设备配置信息-->0x08,0x06,0x50(相应配置),加载usbstor.sys -->发送Bulk-Only Mass Storage Reset,Get Max LUN 指令 -->PC发送Inquiry得到设备信息,USB设备处理一些杂命令-->PC发送READ_10命令从硬盘读取相关数据


hswqs老兄,快救命啊。我也在做移动硬盘。我的固件程序中已经完成了你说的前两步操作:PC首先读取USB设备配置信息-->0x08,0x06,0x50(相应配置),加载usbstor.sys。但是第三步却怎么也不过来,即主机不发送Bulk-Only Mass Storage Reset,Get Max LUN 这两个特定类请求过来,而我用USBCHECK工具测试我前面的标准设备请求都已经通过了(实际收到的请求有GET_DESCRIPTOR()、SET_ADDRESS()和SET_CONFIGURATION()三种请求,都做了相应处理)。不知道你以前在开发过程中有没有遇到过类似的问题,根据你的经验,你估计我的固件程序在哪个处理的环节上出了问题?我现在真是寝食难安啊。
clear_zcl
驱动牛犊
驱动牛犊
  • 注册日期2002-05-30
  • 最后登录2002-07-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2002-06-19 17:36
补充,我在2000下虽然可以加载usbstor.sys驱动程序,但是有感叹号,提示信息好象是“设备启动失败,代码10”。我基本上可以肯定我送给主机的设备描述符和配置描述符是没有什么问题的。
ycbvtrue
驱动牛犊
驱动牛犊
  • 注册日期2002-03-20
  • 最后登录2003-11-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2002-06-19 22:01
我的也是,急需回答。
hswqs
驱动小牛
驱动小牛
  • 注册日期2001-03-27
  • 最后登录2012-03-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2002-06-20 08:25
用BUS BOUND临控一下,看看枚举过程停止在何处,然后仔细检查FIRMWARE。

clear_zcl
驱动牛犊
驱动牛犊
  • 注册日期2002-05-30
  • 最后登录2002-07-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2002-06-20 08:39
我发现设备描述符中的VID和PID两个值如果修改了会对我装载哪个驱动程序产生影响,从而导致主机发来的命令发生变化。现在描述符部分我唯一吃不准的就是这两个值了。是不是可以随便给两个值,还是有什么限制?你的描述符中用的是什么值?
还有那个crack_bushound工具是不是就是你说的BUS BOUND工具?界面只有button1和确定、取消三个按钮,调试时点了根本都没有响应。这个工具怎么用啊?
hswqs
驱动小牛
驱动小牛
  • 注册日期2001-03-27
  • 最后登录2012-03-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2002-06-20 09:32
VID及PID可以随便取

你得先装BUS HOUND,在下载区有,我那只是个破解小程序。
hawie
驱动小牛
驱动小牛
  • 注册日期2002-05-30
  • 最后登录2004-02-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2002-06-20 11:13
建议大家多看看以前别人的贴,多使用search!!!!
clear_zcl
驱动牛犊
驱动牛犊
  • 注册日期2002-05-30
  • 最后登录2002-07-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2002-06-20 13:49
VID及PID可以随便取

你得先装BUS HOUND,在下载区有,我那只是个破解小程序。

谢谢!我再查查我的代码。
panda_lu8888888
驱动小牛
驱动小牛
  • 注册日期2002-06-03
  • 最后登录2002-07-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2002-06-20 16:36
hawie:

你是不是用的rbc命令集???
你有没有rbc命令集的正式版本,如果有的话,能否惠赐一份?
luf@unionchip.com
风儿
clear_zcl
驱动牛犊
驱动牛犊
  • 注册日期2002-05-30
  • 最后登录2002-07-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2002-06-24 10:42
哈哈,USB标准请求部分和特定类请求部分的处理都PASS了,现在到SCSI命令集的处理部分了,我估计盘符出来之前处理下面几个命令也就够了,大家帮我看看对不对?
Inquiry Command
Prevent/Allow Medium Removal
Request Sense
Read Capacity
Read(10)
BUS BOUND真的是个好东东!上载的同志真是功德无量啊。我再也不用以前的笨方法进行分析调试了。
游客

返回顶部