首页
社区
课程
招聘
[求助]如何安装wdk下面的SCSI miniport驱动aha154x.sys?
发表于: 2013-9-27 14:57 22600

[求助]如何安装wdk下面的SCSI miniport驱动aha154x.sys?

2013-9-27 14:57
22600
有人研究过"WinDDK\2600\src\storage\miniport"下面的”aha154x“驱动吗?

最近要做一个虚拟SCSI磁盘,看了一下微软的介绍,感觉可以用这个改改,

但是,用"devcon install aha154x.inf *ADP1540"安装以后,设备一直是感叹号,
想用windbg下断点,但是却一直进入不了,不知道哪里不对

所以,请教一下做过的朋友,万分感谢

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (20)
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
希望熟悉SCSI的大牛,能指导一下,在线等
2013-9-27 16:10
0
雪    币: 468
活跃值: (52)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
共同关注。另有一个问题,看见很多无盘系统是用SCSI miniport驱动,我在想,为什么一定要用SCSI miniport驱动?直接用SCSI port驱动不是也可以吗?另求指点SCSI miniport和SCSI port磁盘驱动的区别。
2013-9-27 17:31
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
SCSI port肯定是可以的

你可以认为SCSI port给miniport提供了一些公共的函数来简化调用,你直接实现这些函数也是可以的,就是比较麻烦~
2013-9-29 09:23
0
雪    币: 468
活跃值: (52)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我看到一些模拟scsi磁盘驱动的软件,和普通的驱动编写相似,只要多处理几个scsi srb命令的irp就可以了。而miniport要麻烦的多,驱动格式完全变了,不是处理普通的irp了。
2013-9-29 16:47
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
能否把你所说的软件上传一份看看

miniport是不处理IRP了,需要初始化一个HW_INITIALIZATION_DATA的数据结构,然后把一些SCSI的操作全部封装到里面了,其实是简化了操作,可能只是你不太习惯罢了
2013-9-30 10:04
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7

安装的时候有点麻烦,不使用INF来安装,把sys驱动文件copy到系统的drivers目录,
然后创建自动运行的NT驱动服务,接着重启系统,系统会自动安装,
但是这样要连续重启2-3次,比较的麻烦,这是作为Non-PNP的方式安装的。
安装成功之后,在设备管理器里,就能看到我们开发的 SCSI/RAID 控制设备了。
(应该是微软的pnpscsi.inf提供的 “SCSI/RAID Host Controller" 的名字,但是驱动是我们的)

http://blog.csdn.net/fanxiushu/article/details/9903123
2013-9-30 12:39
0
雪    币: 468
活跃值: (52)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
源码是pudn下载的,搜索scsi虚拟磁盘
2013-9-30 14:45
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
那你说的一定是VScsiDisk了,基于普通WDM的框架实现了 SCSI PORT驱动

自己实现了 磁盘设备的创建与维护,需要处理来自“FDO”和“PDO”的双重请求

优点:

1. 采用最基本的WDM框架,便于理解
2. 安装方便,不需要重启就可以使用。

缺点:
1. 需要处理的东西太多,稍有不慎就会导致系统崩溃
上传的附件:
2013-9-30 15:43
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
你说的pudn这个网站,没权限下载,如果你有的话,不妨分享一下,共同学习
2013-9-30 15:49
0
雪    币: 468
活跃值: (52)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
对,VScsiDisk这个可以用的。我说的就是这个。还有firadisk也有源码,也是scsi驱动。还有很多ramdisk都是scsi 驱动,不过那些没有源码只有bin。
2013-9-30 16:09
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
firadisk这个看起来不像SCSI驱动,应该还是Disk驱动
2013-9-30 17:37
0
雪    币: 468
活跃值: (52)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
正宗的SCSI port disk驱动,你可以仔细看源码,其中有处理scsi srb的代码。
2013-9-30 17:48
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
的确是SCSI port驱动,不过这个驱动,我不知道怎么加载,明明已经安装了就是不出现磁盘,
算了,放假了,10.1过来再说
2013-9-30 18:06
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
VScsiDisk.rar,这个代码真心不错,借鉴了一下,700多行代码搞定SCSI MINIPORT虚拟磁盘
2013-10-10 09:54
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
不过可惜,在Win7系统下面驱动工作不正常,安装后显示“该设备的驱动程序未被安装。 (代码 28)”
重启系统后还是如此,不知道如何解决
2013-10-10 14:47
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
问题解决了,之前用"devcon install vdisk.inf"的方式来安装的

devcon 会创建一个虚拟设备,然后重启后,系统也会根据驱动服务名也创建一个设备,这时两个设备会冲突,导致系统创建的SCSI设备驱动没有正常安装,所以导致了错误

解决方法:手动写注册表的方式来安装驱动,重启系统,系统会提示安装驱动,这样重复几次以后,驱动就显示正常了。
2013-10-12 17:11
0
雪    币: 468
活跃值: (52)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
祝贺你成功了,不过VScsiDisk.rar这个是SCSI port的大端口驱动,和miniport没有任何关系。
2013-10-12 19:40
0
雪    币: 558
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
笔误了,“SCSI MINIPORT”应该是“virtisk-driver”这个代码

http://blog.csdn.net/fanxiushu/article/details/9903123
http://blog.csdn.net/fanxiushu/article/details/11713357
2013-10-14 16:47
0
雪    币: 46
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
请问你是怎么手动写注册表实现scsi mimport安装的?我也遇到了同样的问题,手工创建NT驱动的注册表方式在xp系统上,重启系统,仍然没有看到任何提示?方便把您的测试例子给我安装试试吗?或者手动写注册表的方法也可以。谢谢了!!
2014-8-4 17:40
0
雪    币: 244
活跃值: (174)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
现在来学5年前的东西...会不会太迟了呢?
2018-12-18 11:08
0
游客
登录 | 注册 方可回帖
返回
//