基于TDI的网络虚拟磁盘驱动研究与实现

合集下载

WindowsTDI过滤驱动开发(学习资料)

WindowsTDI过滤驱动开发(学习资料)

[版权所有] 本文作者是楚狂人,代码来源于开源工程tdifw与DDK的例子, 有问题欢迎与我联系讨论。

mail:******************* QQ: 16191935 msn:************************----------------------------------------------------------- Windows TDI过滤驱动开发 目 录(0) TDI概要(1) 准备工作(2) TDI设备与驱动入手(3) 绑定设备(4) 简单的处理请求(5) 基础过滤框架(6) 主要过滤的请求类型(7) CREATE的过滤(8) 准备解析ip地址与端口(9) 获取生成的IP地址和端口(10) 连接终端的生成与相关信息的保存(11) TDI_ASSOCIATE_ADDRESS的过滤(12) TDI_CONNECT的过滤(13) TDI_SEND,TDI_RECEIVE,TDI_SEND_DATAGRAM,TDI_RECEIVE_DATAGRAM(14) 设置事件(15) TDI_EVENT_CONNECT类型的设置事件的过滤(16) 一个传说中的问题(17) 收尾与清理的工作(0) TDI概要 最早出现的网络驱动应该是网卡驱动,这是Windows的理所当然的需求,为了进一步分割应用程序的网络数据传输与下层协议直到下层硬件的关系,又出现了协议驱动,后来微软和硬件商联合制定了NDIS标准,作为从硬件到协议的内核驱动程序的调用接口标准,而协议驱动与应用层的API之间,则出现了TDI接口。

最近国内安全软件的开发兴起,网络驱动的开发在其中有不少的应用,如果我们学习TDI接口的话,可能有以下一些目的: 自己要开发协议驱动,向上提供TDI接口,这种可能性存在,但不广泛。

我们想自己调用TDI接口,来进行网络数据传输,意义不大。

我们对TDI进行协议层过滤,开发防火墙或类似安全监控软件,这种应用还是比较多的。

一种基于多线阵集成TDICCD的低轨成像驱动方法

一种基于多线阵集成TDICCD的低轨成像驱动方法

一种基于多线阵集成TDICCD的低轨成像驱动方法
李强;樊奔;陈希
【期刊名称】《航天返回与遥感》
【年(卷),期】2016(037)001
【摘要】随着用户对星载对地观测相机的多光谱需求提高,芯片集成化能力的提升,多线阵集成的时间延时积分电荷耦合器件(TDICCD)在航天产品中得到越来越多的
重视和应用.文章分析了TDICCD图像传感器在低轨成像时的特点,提出了一种基于多线阵集成TDICCD在垂直转移时间变短情况下的驱动方式,采用现场可编程门阵
列作为硬件处理平台,使用高速集成电路硬件编程语言设计了多线阵集成TDICCD
驱动时序.经软件仿真验证和硬件实际成像测试,该设计的时序可以满足传感器正确、稳定的工作要求,搭建系统验证了产生时序的正确性,通过采集成像图像并进行了分析,最终确定驱动传感器工作正常,且能有效解决不同线阵间的成像干扰,提高了传感器的成像品质.
【总页数】9页(P32-40)
【作者】李强;樊奔;陈希
【作者单位】北京空间机电研究所,北京100094;北京空间机电研究所,北京100094;北京空间机电研究所,北京100094
【正文语种】中文
【中图分类】V474
【相关文献】
1.一种基于虚拟参考站的低轨双星时差频差精密修正方法 [J], 李刚;蔡成林;李思敏;王亮亮;刘昌盛
2.一种基于信息决策树的低轨星座传感器调度方法 [J], 程洪玮;王博;安玮
3.一种基于自适应双门限的低轨空间碎片角位置测量方法 [J], 武茹茹;杨松;黄达
4.一种基于时空网格的低轨星座传感器调度方法 [J], 王铁兵;罗少华;王博;吴京
5.一种基于自适应双门限的低轨空间碎片角位置测量方法 [J], 武茹茹;杨松;黄达因版权原因,仅展示原文概要,查看原文内容请购买。

iSCSI虚拟网络磁盘驱动实现

iSCSI虚拟网络磁盘驱动实现

iSCSI虚拟网络磁盘驱动实现
褚福玺
【期刊名称】《软件导刊》
【年(卷),期】2008(7)8
【摘要】在分析和研究iSCSI协议与Windows内核驱动程序的基础上,设计并实现了基于Windows XP虚拟磁盘驱动程序。

程序基于Windows小端口驱动程序,采用传输驱动接口(TDI)技术实现网络连接,将SCSI数据和命令封装为iSCSI协议数据单元发送给网络内的存储器。

驱动程序加载后,网络内的磁盘在用户机上显示为本地的磁盘,直接访问该磁盘分区即可与网络磁盘交互,从而实现了iSCSI的虚拟网络磁盘。

【总页数】3页(P140-142)
【关键词】iSCSI协议;虚拟网络磁盘驱动;Windows驱动模型;迷你端口驱动;网络传输接口
【作者】褚福玺
【作者单位】东南大学软件学院
【正文语种】中文
【中图分类】TP311.52
【相关文献】
1.iSCSI分析及其Linux驱动实现 [J], 马子超
2.iSCSI SAN中高速虚拟网络I/O通道技术研究 [J], 周敬利;王克朝;余胜生;姜明

3.基于微端口驱动的iSCSI存储技术的设计与实现 [J], 张振;丁琦;高峻岭
4.基于微端口驱动的iSCSI存储技术的设计与实现 [J], 张振;丁琦;高峻岭
5.ISCSI磁盘数据双控制器存储完整性测试技术研究 [J], 郑杰辉
因版权原因,仅展示原文概要,查看原文内容请购买。

虚拟设备实现Modbus串行链路与Modbus/TCPIP的互连

虚拟设备实现Modbus串行链路与Modbus/TCPIP的互连

虚拟设备实现Modbus串行链路与Modbus/TCPIP的互连【摘要】Modbus作为第一个用于工业现场的总线协议,应用极其广泛,他包括基于串口的Modbus协议和基于以太网的Modbus/TCPIP协议。

文章描述了通过虚拟设备实现了这两种通讯方式的互联并给出了实现细节,提出了虚拟技术具有广泛的应用领域。

【关键词】虚拟串口;TDI驱动;ModbusVirtual device make the connection between Modbus serial port and Modbus/TCPIPAbstract:Modbus is applied widely as the first bus treaty used in industry.It includes Modbus treaty based on serial port and Modbus/TCP treaty based on ethernet network. The essay realizes the connection of the two kinds of communication and give the realization in details, put forward that the technology of virtual will be used widelyKey words:virtual serial port;TDI drive;Modbus引言近年来,工业现场总线与工业以太网发展迅速,他们之间的之间的竞争也十分激烈。

Modbus/TCP以太网协议由Schneider公司发布,是将Modbus现场总线协议与以太网TCP/IP协议结合而成,使得信息从一个网络传输到另一个网络而不需改变通讯协议成为了可能。

IANA委员会给施耐德电气公司分配了已为大家熟知的TCP 502端口,以专为Modbus协议保留,可见,Modbus/TCPIP协议现在已经成为Internet标准。

基于iSCSI网络存储协议的虚拟SCSIHBA驱动方法

基于iSCSI网络存储协议的虚拟SCSIHBA驱动方法

文 章 编 号 :0 3—6 9 (0 6 0 10 19 2 0 )4—0 5 —0 07 4
基 于 i C I网 络 存 储 协 议 的 虚 拟 S S S IHBA 驱 动 方 法 CS
谭 怀 亮 , 再 红 贺
( 南 大 学 汁算 机 与 通 信 学 院 ,湖 南 长 沙 湖 408 ) 10 2
谊 虚 拟 S S B 驱 动 向 主 机 应 用程 序 或 文件 系 统 的 IO 请 求 提 供 磁 盘 访 问重 定 向 服 务 。 并 且 进 行 映 射 CI A H / S S 硬 盘 的 读 写性 能 测 试 。 结 果 表 明 , 写 映 射 S S 硬 盘 性 能 接 近 10 M 以 太 网络 线 速 度 的 7 % 。 应 用 CI 读 CI 00 0
( A ) 式 向 I AN存 储 模 式 的 平 滑 过 渡 。 1 S模 ) PS
关键词 : C I i S :虚 拟 S S A; 太 网卡 : 备 驱 动 S CI HB 以 设 中图 分 类 号 : 9 5 0 TN 1 ,4 文献标识码 : A
Th i e e ho f Vi t a CS BA n i CS t r t r g o o o e Dr v r M t d o r u lS I H o S I Ne wo k S o a e Pr t c l
摘 要 : C I i S 已成为网络存储的重要协议 。基 于谊 协议 设计一种将普通 的以太 网卡虚拟 成 S S B S CI A H
的 方 法 , 在 W idw 和 Ln x操 作 系 统 下 开发 了相 应 的 虚 拟 设 备 驱 动程 序 。根 据 本 方 法 设 计 的 虚 拟 S S 并 no s iu CI H A 驱 动 在 Ln x和 Wid w 平 台上 映射 的 S S 硬 盘 呈现 出和 本 地 主 机 物 理 硬 盘 一 样 的 访 问 机 制 , 由 B i u no s CI 即

基于TDI的网络虚拟磁盘驱动研究与实现

基于TDI的网络虚拟磁盘驱动研究与实现
tr f c n yi ewo kta s o t a ̄ . t s e e p db sd o e f i c nn t r rn p r b cu ei i d l e ae nW i o k r e mo e I d io , evru l t r es s m ae n el e s v o n ws en l d .n a dt n t i a o a t b sdo d i h t s g ye
过 介绍 在 Wi o s T 内核模 式下设 计 虚拟磁 盘驱 动 的详 细 原理 , 析 和研 究 网络 虚拟 磁 盘驱 动 的 设计 与实 现 。开 发过 n w d N 分 程 中, 调用 T IT asot r e It f e 函数 , 了 网络虚 拟磁 盘驱 动 的网络 功能 。使 用此 方法 开 发虚 拟存 储 系统 , D ( r pr Di rne a ) n v rc 实现 由
W id wsNT e e d An lz n rsac o t ein aA ee h ewo k vru lds rv r DI ig te d eo ig, no k m lmo e. ay eaA eer hh w o d sg o d bpt en t r i a ik d ie . l n h e lpn TDI v t r v
随着网络的普及, 网络技术针对个人应用的比例越来
越高, 例如 电 子 邮箱 、 个人 主 页 空 间 、 人 网络 空 间。 近 个
网络 虚 拟 磁盘 技 术 有 多 种 实 现 方 式 , 主要 有 : , 一 以
We 方式使用 ; , b 二 客户端程序的形式 ; , 三 在本地资源管 理器显示盘符。对比这几种方式 , 方式三有着其他两种方
( rnp r D ie tr c)fnt n aebe sdt eleten t r nf n. ultrg ytm s gtimehd,a e— T asot r rI efe uci s v enue raz ewokf e osV a oaess ui hs to hs t v n a o h o i h ui s e n b

基于WDM的虚拟网络存储系统的设计与实现

基于WDM的虚拟网络存储系统的设计与实现
存储 虚拟 化 (t aeVr aztn 是 把 不 同 程序对网络异构存储设备的访问等价于对本机存 So g iulai ) r t i o
接 口协议 的物理存储设 备整合 成一个虚拟 存储 储 设备 的直 接访 问. 系统 建 立 在块 设备 级 上 , 本 可
池, 在主机 应 用 程 序 面 前呈 现 为 一 个 虚 拟 本 地 硬 以将多个块设备 映射为一个块设备 , 同时不需要 专 用 网 络 设 备 和 接 口设 备 . 此 既 可 以 完 成 对 因
拟层在块设备级上 完成磁盘操作与网络通信的映射 , 高了系统的运行等级和网络通 提 信的可靠性与实时性. 整合 了异地、 异构 网络存储设备 , 并提供 了统一、 明的访 问接 透
口. 出了 系统 的体 系结构 和具体 实现 方 法. 给
Hale Waihona Puke 关键词: 虚拟 存储 ; M; D WD T I 文献标 识码 : A
维普资讯
2 7 月 o 年2 0
第2 6卷 第 1 期
沈 阳 理 工 大 学 学 报
T RAN AC I NS O S N S TO F HE YA NG L GONG UNI RS T I VE I Y
VO 1.2 6 No F b. 2 0 0 e
( o pt C m ue Ifr t nT c nl yC l g ,D qn er em Istt,D qn 6 3 8 hn ) r& n ma o ehoo oee a igP tlu ntue a i 13 1 ,C ia o i g l o i g
Ab t a t A it a ewo k tr g y t m b s d o DM s d sg e s r c : vru l n t r so a e s se ae n W i e i n d. Th vru a r e i a lye t l r n i g i h ene d o lt st e ma p n ft e lc ld s p r t n t h e o — u n n n t e k r lmo e c mp ee h p i g o h o a ik o e ai o t e n tc r o n mu i ain o h lc e i e l v 1 o t e r n n i rt ft e s se c n b u r n n c to n t e b o k d vc e e .S h un i g pro i o h y tm a e g a a — y te e d.Th ei b l y a d r a —tme a c r c ft e n t r o e r l i t n e a i l i c u a y o h ewo k c mmunc t n c n b mp o e iai a e i r v d o

Windows驱动程序技术的研究及在DFW中的应用

Windows驱动程序技术的研究及在DFW中的应用

Windows驱动程序技术的研究及在DFW中的应用
陈春玲;楼伟杨;陈丹伟
【期刊名称】《南京邮电大学学报(自然科学版)》
【年(卷),期】2005(025)004
【摘要】Windows传输驱动程序接口(Transport Driver Interface,TDI)技术是实现分布式防火墙的主要技术之一.由于Windows系统不是一个开放系统,因此在
TDI上实现封包截获的驱动程序存在较大困难.研究了Windows的TDI技术,包括
输入输出请求包的结构和处理过程、几种重要的内核模式驱动对象及它们之间的联系,介绍了如何在TDI上设计驱动程序及其调试方法.在设计基于Windows平台的分布式防火墙系统中,采用TDI技术实现了数据包的截获,为今后对数据包进行分析、过滤和加解密打下了基础.
【总页数】5页(P70-73,79)
【作者】陈春玲;楼伟杨;陈丹伟
【作者单位】南京邮电大学,计算机科学与技术系,江苏南京,210003;南京邮电大学,计算机科学与技术系,江苏南京,210003;南京邮电大学,计算机科学与技术系,江苏
南京,210003
【正文语种】中文
【中图分类】TP316.7
【相关文献】
1.神经语言程序技术在肿瘤患者心理舒缓疗护中的应用 [J], 闻曲;成芳;郑婷方;彭昕;杜洺君
2.神经语言程序技术在肿瘤患者心理舒缓疗护中的应用 [J], 闻曲;成芳;郑婷方;彭昕;杜洺君;
3.DFW在网络安防规划中的应用 [J], 许莉;张锦涛
4.DFW-OBN型X线钡餐检查在功能性消化不良中的应用 [J], 何伟
5.富互联网应用程序技术在地理信息系统开发中的应用研究 [J], 廖国衡;吴升因版权原因,仅展示原文概要,查看原文内容请购买。

虚拟设备DXV驱动程序的开发

虚拟设备DXV驱动程序的开发

虚拟设备DXV驱动程序的开发
居锦武;叶晓彤
【期刊名称】《四川理工学院学报(社会科学版)》
【年(卷),期】2003(018)004
【摘要】虚拟设备驱动程序的基本概念和几种常用的开发工具,并对它们的使用进行了简略的评述.
【总页数】2页(P124-125)
【作者】居锦武;叶晓彤
【作者单位】无
【正文语种】中文
【中图分类】TP31
【相关文献】
1.C++Builder语言的虚拟设备驱动程序VxD的开发 [J], 吴杰宏;陈晓峰
2.虚拟设备驱动程序的开发设计 [J], 李湘江;周建军
3.Windows98下硬件中断虚拟设备驱动程序的开发 [J], 刘永山;汤毅
4.Win9x下虚拟设备驱动程序的开发 [J], 张红强;章兢;欧青立
5.Windows98环境下的虚拟设备驱动程序(VxD)的开发 [J], 王兵;陈华龙因版权原因,仅展示原文概要,查看原文内容请购买。

基于SoPC和NFS的虚拟SATA硬盘

基于SoPC和NFS的虚拟SATA硬盘

基于SoPC和NFS的虚拟SATA硬盘
何杰;郭燕妮;张博;张刚
【期刊名称】《火力与指挥控制》
【年(卷),期】2016(041)004
【摘要】大数据背景下,网络文件系统NFS作为一种成熟的分布式文件系统,为数据存储、管理提供了良好解决方案;SoPC是基于软硬件协同设计的片上可编程系统,应用前景十分广泛。

系统以SATA硬盘为存储介质实现了一个基于SoPC 的完整网络存储结构。

重点介绍了如何在FPGA内嵌MicroBlaze处理器上设计实现NFS服务组件、文件系统软件,以及如何设计实现SATA硬盘控制硬件IP核。

经Xilinx的XUPV5_LX110T开发平台调试验证,SoPC网络存储软硬件系统工作正常,可以用作云存储的虚拟资源节点。

【总页数】4页(P174-176,180)
【作者】何杰;郭燕妮;张博;张刚
【作者单位】太原理工大学信息工程学院,太原 030024;太原理工大学信息工程学院,太原 030024;太原理工大学信息工程学院,太原 030024;太原理工大学信息工程学院,太原 030024
【正文语种】中文
【中图分类】TP333
【相关文献】
1.基于PowerPC的SATA固态硬盘存储阵列设计 [J], 孟琪;张杰;范晓星
2.一种基于SATA硬盘阵列的数据存储与控制系统设计 [J], 李秦
3.一种基于SATA硬盘阵列的数据存储与控制系统设计研究 [J], 韩慧芳
4.一种基于SATA硬盘阵列的数据存储与控制系统设计研究 [J], 韩慧芳
5.基于64层3D NAND技术的企业级SATA固态硬盘 [J],
因版权原因,仅展示原文概要,查看原文内容请购买。

基于TDI的网络虚拟磁盘驱动研究与实现

基于TDI的网络虚拟磁盘驱动研究与实现

基于TDI的网络虚拟磁盘驱动研究与实现
刘立辉;李健;朱良峰;庄俊玺
【期刊名称】《计算机技术与发展》
【年(卷),期】2006(16)8
【摘要】应个人网络存储应用的需要,研究和开发网络虚拟存储系统.实现这种系统的关键是开发网络虚拟磁盘驱动.通过介绍在Windows NT内核模式下设计虚拟磁盘驱动的详细原理,分析和研究网络虚拟磁盘驱动的设计与实现.开发过程中,调用TDI(Transport Driver Interface)函数,实现了网络虚拟磁盘驱动的网络功能.使用此方法开发虚拟存储系统,由于是基于Windows内核的开发,所以网络传输效率较高;另外,基于此技术的虚拟存储系统,没有改变用户的使用习惯,所以大大方便了用户的使用.
【总页数】4页(P200-203)
【作者】刘立辉;李健;朱良峰;庄俊玺
【作者单位】北京工业大学,计算机学院,北京,100022;北京工业大学,计算机学院,北京,100022;北京工业大学,计算机学院,北京,100022;北京工业大学,计算机学院,北京,100022
【正文语种】中文
【中图分类】TP393.01
【相关文献】
1.基于事件驱动的网络课件制作系统的研究与实现 [J], 黄喜民;张子蛟;胡宏伟;周兵
2.基于虚拟磁盘的可信加密磁盘的研究与实现 [J], 成国永;韩永飞;王会霞
3.基于CPLD的高速线阵TDI CCD驱动电路设计 [J], 李翰山;王泽民;雷志勇;雷鸣;李静
4.基于CPLD的TDI/CCD图像传感器驱动时序设计 [J], 卢阳;陈向东
5.基于事件驱动的网络报文传输模型的研究与实现 [J], 孙军平;盛万兴;王孙安因版权原因,仅展示原文概要,查看原文内容请购买。

STD总线虚拟RAM磁盘的开发应用

STD总线虚拟RAM磁盘的开发应用

STD总线虚拟RAM磁盘的开发应用
沈星
【期刊名称】《现代科学仪器》
【年(卷),期】1989(000)004
【摘要】工业自动化水平的不断提高,给工业控制用计算机提出了更高的要求,采用通用计算机和一些特定的附加外部设备是无法满足目前实际工程的需要。

因此,工程师们都希望工业控制用计算机具有较好的性能价格比、稳定可靠、扩展灵活、适应不同机种的更换和抗工业环境干扰性强。

STD 总线正是在
【总页数】2页(P23-24)
【作者】沈星
【作者单位】中国科学院化工冶金研究所
【正文语种】中文
【中图分类】TH7
【相关文献】
1.双端口RAM在STD总线与单片机通讯中的应用 [J], 杨慧;杨英;王平
2.磁盘阵列上虚拟磁盘的管理 [J], 申新鹏;曾雷杰;赵晓南
3.基于虚拟磁盘的可信加密磁盘的研究与实现 [J], 成国永;韩永飞;王会霞
4.不用花钱添磁盘——虚拟磁盘 [J],
5.Diskpart支持虚拟化:支持物理磁盘,又支持虚拟磁盘的强大工具 [J], Mark Minasi; 青成(译者)
因版权原因,仅展示原文概要,查看原文内容请购买。

基于虚拟磁盘技术结合轮转策略的U盘系统自动还原技术研究

基于虚拟磁盘技术结合轮转策略的U盘系统自动还原技术研究

基于虚拟磁盘技术结合轮转策略的U盘系统自动还原技术研

王桂强;李咸宁;郭占鹏;杜征宇
【期刊名称】《电脑编程技巧与维护》
【年(卷),期】2024()1
【摘要】针对U盘安装的多系统启动配置困难、容易受到计算机病毒侵扰等问题,提出了基于虚拟磁盘技术结合轮转策略实现的自动还原技术。

该技术使用系统自带功能和开源工具实现,屏蔽了复杂的启动管理操作,具有磁盘空间开销低、适用范围广、易于管理、不易出错等特点。

【总页数】4页(P40-42)
【作者】王桂强;李咸宁;郭占鹏;杜征宇
【作者单位】军事医学研究院;保障部信息中心
【正文语种】中文
【中图分类】TP3
【相关文献】
1.基于彩色图像显示系统的r色彩还原技术研究
2.基于信息处理的乌兹别克语语音变化现象自动还原技术研究
3.基于用电信息采集和配电自动化系统数据的电源点自动识别技术研究
4.近红外光谱法结合自动化控制系统在感冒灵颗粒浓缩过程中的在线检测技术研究
因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

收稿日期:2005-11-16作者简介:刘立辉(1981-),男,河北人,硕士研究生,研究方向为计算机网络技术及其应用;李 健,教授,研究方向为网络技术及信息安全。

基于TD I 的网络虚拟磁盘驱动研究与实现刘立辉,李 健,朱良峰,庄俊玺(北京工业大学计算机学院,北京100022)摘 要:应个人网络存储应用的需要,研究和开发网络虚拟存储系统。

实现这种系统的关键是开发网络虚拟磁盘驱动。

通过介绍在Windows N T 内核模式下设计虚拟磁盘驱动的详细原理,分析和研究网络虚拟磁盘驱动的设计与实现。

开发过程中,调用TDI (Transport Driver Interface )函数,实现了网络虚拟磁盘驱动的网络功能。

使用此方法开发虚拟存储系统,由于是基于Windows 内核的开发,所以网络传输效率较高;另外,基于此技术的虚拟存储系统,没有改变用户的使用习惯,所以大大方便了用户的使用。

关键词:传输驱动接口;虚拟磁盘;网络磁盘;内核模式驱动中图分类号:TP393.01 文献标识码:A 文章编号:1673-629X (2006)08-0200-04R esearch and R ealization of TDI -B ased N et work Virtual Disk DriverL IU Li 2hui ,L I Jian ,ZHU Liang 2feng ,ZHUAN G J un 2xi(College of Computer Science ,Beijing University of Technology ,Beijing 100022,China )Abstract :To deal with the need of the personal network storage application ,research and develop the network virtual storage system.The most important thing to realize the system is to develop a network virtual disk driver.Introduce the principle of virtual disk driver under Windows N T kernel mode.Analyze and research how to design and develop the network virtual disk driver.During the developing ,TDI (Transport Driver Interface )functions have been used to realize the network functions.Virtual storage system using this method ,has bet 2ter efficiency in network transport because it is developed based on Windows kernel mode.In addition ,the virtual storage system based on this technology is easy to use because it has not change the habits of the users.K ey w ords :TDI ;virtual disk ;network disk ;kernel mode driver 随着网络的普及,网络技术针对个人应用的比例越来越高,例如电子邮箱、个人主页空间、个人网络空间。

近来,应用户移动办公的需要,网络虚拟磁盘技术得到了广泛应用。

应用这种技术,用户把自己的文档存储在网络磁盘上,随时随地进行存取和编辑,使用方便快捷。

实现这种技术的关键是开发网络虚拟磁盘驱动。

1 网络虚拟磁盘驱动功能分析Windows 用户为了更加方便地管理自己的文件,常常应用虚拟磁盘。

方法是把某些文件或目录镜像为逻辑磁盘(即虚拟磁盘),然后把文件存放在虚拟磁盘里,以便于管理。

这些磁盘,有的显示为资源管理器里的盘符,有的有独立的界面,使用方便快捷。

网络虚拟磁盘技术就是在这种虚拟磁盘技术的功能之上加入网络功能,简言之,就是把网络上的存储空间虚拟为本地逻辑磁盘的技术。

网络虚拟磁盘技术有多种实现方式,主要有:一,以Web 方式使用;二,客户端程序的形式;三,在本地资源管理器显示盘符。

对比这几种方式,方式三有着其他两种方式不可比拟的优点,使用方便,不用改变用户的操作习惯;功能强大,可以模拟本地磁盘;界面简洁,易于管理。

文中将研究第三种方式的一种实现方法。

根据需求,网络虚拟磁盘驱动应该满足以下两点功能,第一,能够实现虚拟功能,可以模仿本地磁盘;第二,能够实现网络传输,对网络上的文件或目录进行虚拟,并把操作命令和数据发到空间服务器上。

2 网络虚拟磁盘驱动在Windows NT 中的位置2.1 Window s NT 分层驱动原理Windows N T 提供了一种分层的体系结构,每一个N T 设备驱动程序都有一个下层接口和一个上层接口。

低层的驱动程序直接控制硬件。

在低层和上层驱动程序之间的是中间层驱动程序[1]。

Windows N T 的这种驱动程序体系,在Windows 98和Windows 2000中得到了继承和扩展,形成了现在的WDM 体系。

这使得在WindowsN T 平台下,开发网络虚拟磁盘驱动成为可能。

第16卷 第8期2006年8月 计算机技术与发展COMPU TER TECHNOLO GY AND DEV ELOPMEN T Vol.16 No.8Aug. 2006WDM 使用了分层的驱动程序结构,而且WDM 是基于对象的。

为了便于对硬件的管理,WDM 里对每一个单一的硬件引入了一些数据结构:物理设备对象(PhysicalDevice Object ),简称为PDO ;功能设备对象(Function De 2vice Object ),简称为FDO ;过滤设备对象(Filter Device Ob 2jects ),简称为FiDO 。

在数据结构栈中的每一个对象都属于一个特定的驱动程序,PDO 属于总线驱动程序,FDO 属于功能驱动程序,FiDO 属于过滤驱动程序(如图1所示[2])。

图1 分层驱动程序结构每个操作都使用I/O 请求包。

IRP 先被送到设备堆栈的最上层驱动程序,然后再逐渐过滤到下面的驱动程序。

每一层驱动程序都可以决定如何处理IRP 。

不同位置的驱动程序扮演了不同的角色,总线驱动程序管理计算机与PDO 所代表的设备的连接。

功能驱动程序管理FDO 所代表的设备。

过滤器驱动程序用于监视和修改IRP 流。

2.2 分层结构中的网络虚拟磁盘驱动虚拟磁盘驱动属于过滤器驱动程序,它的功能是修改IRP 流。

具体就是把对文件的位置请求,经过处理,指定到真实的磁盘位置,并把命令和数据传递下去。

现在分析三种情况下,文件操作中对驱动程序的调用过程。

通过三种情况的比较,解释网络虚拟磁盘驱动程序在Windows N T 系统结构中的位置及所起的作用。

结合图例对比如下(注:图2、图3、图4省略了细节和一些与此处说明无关的过程。

):(1)访问DOS 分区逻辑磁盘中的文件(如图2所示)。

如,打开C :\MyPackage \Myfile.doc 。

用户通过使用打开文件的高级函数调用Win32API 函数访问系统服务,系统服务程序首先调用文件系统驱动找出文件的逻辑位置,文件系统驱动再调用磁盘驱动转换为磁盘的物理位置,找到该文件,执行打开操作。

↓文件系统驱动↓磁盘驱动图2 访问DOS 分区逻辑磁盘中的文件(2)访问本地虚拟磁盘中的文件(如图3所示)。

如,打开I :\MyPackage \Myfile.doc ,其中I :是由DOS 分区逻辑磁盘D :中的一个镜像文件FileDisk.img 虚拟成的逻辑磁盘。

用户通过使用打开文件的高级函数调用Win32API 函数访问系统服务,系统服务程序首先调用文件系统驱动找到文件的逻辑位置,文件系统驱动再调用虚拟磁盘驱动,将访问磁盘的逻辑位置转换为访问镜像文件的逻辑位置,再调用文件系统驱动找到镜像文件所在逻辑磁盘的逻辑位置,然后调用磁盘驱动转换为磁盘的物理位置,执行打开操作。

↓文件系统驱动↓虚拟磁盘驱动↓文件系统驱动↓磁盘驱动图3 访问本地虚拟磁盘中的文件(3)访问网络虚拟磁盘中的文件(如图4所示)。

例如,G:\MyPackage \Myfile.doc ,其中,G:是由远程磁盘上的镜像文件FileDisk.img 虚拟的。

用户通过使用打开文件的高级函数调用Win32API 函数访问系统服务;系统服务程序首先调用文件系统驱动程序找到文件的逻辑位置,即G 盘上的逻辑位置;文件系统驱动调用虚拟磁盘驱动,将访问磁盘的逻辑位置信息及操作命令和数据交给网络协议驱动;网络协议驱动调用网卡驱动将位置信息操作命令及数据发送到远程服务器上,远程服务器负责完成打开文件的操作,并把操作结果返回。

图4 访问网络虚拟磁盘上的文件3 网络虚拟磁盘驱动所涉及的Windows 设备3.1 Window s NT 中的NT 设备和Win32设备Windows N T 对象名字空间提供一种伞形结构,在其下是个对象的自包含的集,叫做对象域,并允许对象名字空间被扩充[1]。

I/O 管理器是一个二级对象管理程序,管理着一个由磁盘文件、目录、设备组成的对象域。

I/O 管理程序创建名字为\Device 的对象目录,来包含代表I/O 设备的各对象的名字。

在用函数IoCreateDevice 创建Device 对象时,指定的名称是设备对Windows N T Executive 知道的名字。

如果・102・第8期 刘立辉等:基于TDI 的网络虚拟磁盘驱动研究与实现要使设备对Win32子系统和DOS 虚拟机可用,还必须给设备一个DOS 名称。

在MS -DOS 中,用户使用A :、C :、D :等等来指定软盘和硬盘驱动器,Win32子系统通过把全部驱动器字母放入对象管理程序名字空间作为全程数据来保护驱动器字母。

为此,创建一个特别的对象目录(如图5所示[1])。

图5 Win32设备对象目录N T 设备名和Win32设备名位于对象管理器的名字空间的不同部分。

N T 设备名在树的\Device 下面。

而Win32名则出现在\DosDevices 下面。

同一Device 对象的N T 设备名和DOS 设备名通过符号连接相联系。

相关文档
最新文档