阅读:4428回复:32
这是我移植的windows下的iSCSI目标器
这是我移植的一个window下的iSCSI目标器(Target),支持微软的启动器和linux下的iSCSI启动器,提供文件IO和内存IO两种模式.
加上微软的启动器就可以迅速搭建自己的iSCSI平台了。 |
|
最新喜欢:hongsi... |
沙发#
发布于:2005-02-27 00:06
我的意思是你在初始化的时候用IOCTL_SCSI_GET_ADDRESS取得你创建的disk的BUS TARGET LUN,记录下来,在miniport里面就可以根据SRB的Path Target Lun来确定是不是发给你创建的disk的。 可以取,不过所有盘的全是0,因为用这种方法创建的盘是没有BUS TARGET LUN的,和miniport INQUIRY出来的SCSI Disk不一样,IOCTL_STORAGE_QUERY_PROPERTY...StorageDeviceProperty时返回的BusType也是BusTypeUnknown,不能靠这个判断的。 不过我想我大致知道怎么弄了,在写入pdoExtension->HardwareId时那个键值好像要改... |
|
板凳#
发布于:2005-02-26 22:08
我的意思是你在初始化的时候用IOCTL_SCSI_GET_ADDRESS取得你创建的disk的BUS TARGET LUN,记录下来,在miniport里面就可以根据SRB的Path Target Lun来确定是不是发给你创建的disk的。
|
|
地板#
发布于:2005-02-26 21:46
不过话说回来,要是能在创建Disk Pdo时完全模仿一个SCSI Disk倒也不必这么麻烦了,呵呵
|
|
地下室#
发布于:2005-02-26 21:40
那是个port + miniport完整的WDM驱动,在处理StartDevice时直接创建Disk Pdo,并没有处理INQUIRY,由于没有创建成SCSI Disk所以没有<PathId,TargetId,Lun>,于是在驱动中(IRP_MJ_SCSI...SRB_FUNCTION_EXECUTE_SCSI)就算打开SRB或者看IO_STACK_LOCATION都不好判断发请求来的Disk Device了,其实只要能在这里找到Pdo指针就OK...
DS 3.1里面生成的那个虚拟SCSI适配器框架我没试过,我还没看太明白,你是那一层的驱动啊,miniport?还是一般的驱动然后自己创建一个disk pdo?那你怎么截获请求呢?是filter的话应该还可以看到PDO指针,如果是miniport,可以通过IOCTL_SCSI_GET_ADDRESS查出来你创建的磁盘的LUN等信息。 |
|
5楼#
发布于:2005-02-26 13:37
DS 3.1里面生成的那个虚拟SCSI适配器框架我没试过,我还没看太明白,你是那一层的驱动啊,miniport?还是一般的驱动然后自己创建一个disk pdo?那你怎么截获请求呢?是filter的话应该还可以看到PDO指针,如果是miniport,可以通过IOCTL_SCSI_GET_ADDRESS查出来你创建的磁盘的LUN等信息。
|
|
6楼#
发布于:2005-02-26 12:20
对了,正好有个小问题讨教,不知道你试没试过DS 3.1里面生成的那个虚拟SCSI适配器框架?生成的代码里面暂时就一个RAM disk,还有点BUG,在处理start device时手工创建了Disk PDO,用DeviceId区别并且挂在适配器device extension的list里面,可是等到回头要处理上面发下来的IRP时却不好再判断来源于哪个DeviceId了,因为手工创建的时候仅仅是用的Generic Disk形式,没有SCSI Disk的<PathId, TargetId, Lun>,也就是SRB里面、PIO_STACK_LOCATION irpStack里面都看不出来源了。要是就保持一个PDO也无所谓,多个就麻烦了,你觉得怎么办比较好?呵呵 :)
|
|
7楼#
发布于:2005-02-26 12:08
我在你们旁边冯姐那里,呵呵,你们做iSCSI的那年我们在搞软阵列里面的东西,碰巧也在看miniport/port/disk class,byhh里面好像还留着几片那时的贴子,我是apocalypse ;)
|
|
8楼#
发布于:2005-02-24 20:20
tanky是老谢实验室的么?我注意你很久了,hohoho 是啊,你是那里,说得我后背直冒凉气呀。 +_+!! 新的版本V0.8出来了,加入了多用户管理和数据保护和还原功能。欢迎使用。 下载地址: http://iscsi.nease.net |
|
9楼#
发布于:2005-01-22 01:18
tanky是老谢实验室的么?我注意你很久了,hohoho
这是我移植的一个window下的iSCSI目标器(Target),支持微软的启动器和linux下的iSCSI启动器,提供文件IO和内存IO两种模式. |
|
10楼#
发布于:2004-12-03 11:04
而且我已登陆白云黄鹤,账号Rubbish(不太好听,没办法,不让用数字),昵称是陈灼,请多指教!
|
|
11楼#
发布于:2004-12-03 11:00
楼主好,我也在做iSCSI的东西,您是华中理工大学的吧!
想请教您一些问题,不知道您的联系方式,如QQ,MSN。 我的QQ是19503915,MSN是ac97cdh@hotmail.com 多谢! |
|
12楼#
发布于:2004-11-09 12:58
还有这个错误
|
|
13楼#
发布于:2004-11-09 12:53
我在win2000 SP4 和winxp sp2 上安装都报这个错误。x86fre-1.05a和ia64fre-1.05a 这两个版本都报这个错误。到底是怎么回事?
|
|
14楼#
发布于:2004-11-08 19:35
以前也写过,不过没有微软的性能高,而且开发也不是很方便,很多接口微软都没公布。一般微软的启动器工作得还蛮好得,你的报什么错。
|
|
15楼#
发布于:2004-11-08 18:56
为什么不写个启动器呢? 微软的那个安装老报错误
|
|
16楼#
发布于:2004-08-24 14:11
谢谢你的回复,我所需的就是这个功能,断开之后数据就不要了,当然,还得保证我自己有办法写入数据才。
tanky 有方法可以联系你吗? [编辑 - 8/26/04 by dedhql] |
|
17楼#
发布于:2004-08-24 12:58
这个东东是干嘛用的?
|
|
18楼#
发布于:2004-08-24 12:58
我还是不太清楚你的需求,你所写的数据最终是否要放到iSCSI盘上去,还是断开连接后就不要了.通过加cache肯定可以实现延迟写功能.你准备把这个iSCSI盘给一个用户使用还是多个用户共享.
Win iSCSI Target 0.5版已经发布了,添加了后端存储开发接口,这样你就可以按照你需要控制数据的读写了. 我上载一个,你也可以到http://www.freewebs.com/iscsi下载 |
|
|
19楼#
发布于:2004-08-24 12:42
你好,请问有没有办法实现保护iSCSI盘中的内容呢?即写入的东西只放入缓冲区,实际内容不被改写。
|
|
上一页
下一页