学位专题

目录>
<
DOI:10.7666/d.Y670958

网络镜像块设备驱动研究与实现

陈洪
电子科技大学
引用
本文先简要介绍Linux文件系统的整体结构及主要数据结构,然后着重介绍Linux对缓冲块的管理,最后再给出系统调用安装或卸载文件系统的实现流程及相关的数据结构.然后在以上基础上仔细分析了网络存储镜像的实现方法,举了几个例子来分析如何有效的截获用户读写数据.因为在网络镜像中使用了TCPIP协议栈和网络编程,所以文章中也对这部分进行了分析研究.最后分析了一下内核中的一些提高性能的关键机制.这时就来到了本文最重要的地方,就是Linux系统下的驱动程序的编写部分,因为我们重点关注的是块设备驱动程序,所以简单的介绍了一下如何编写驱动程序,然后就重点分析了块设备驱动程序的重要数据结构,重要的函数,这里面有request队列的数据结构和操作函数等等.最后为了保证可移植性,我采用的不是更改Linux源代码树的方法,而是加载内核模块的方法,所以也详细分析了如何编写内核模块的方法.然后详细分析了Linux系统下用软件实现磁盘镜像和NAS的方法,这里面包括软件Raid和Nbd的一些内核代码,从这里得出网络镜像系统可以充分参考借鉴这两类不同的块设备驱动程序的一部分实现代码,即从Raid中学习块设备镜像的方法,再从Nbd中学习到数据块在网络中传递的一些技巧.其实我们如果仔细的研究Linux内核源代码,就可以实现很多东西,这也是它比Windows系统更受Hacker们欢迎的原因.最后就到了NMBD驱动程序设计和实现的方法,从代码中可以看出Linux的源代码树对我有多大的帮助.而且在实现的过程中发现一些问题,比如不同应用程序对数据块的一致性有不同的需求,比如发送端和接收端之间读写数据块的一些影响.那么在NMBD中都仔细考虑并提出了一些算法解决.通过对本系统的初步测试,表明该系统初步实现了设计目标.

网络附属存储;Linux内核;Linux核心模块程序;网络镜像

电子科技大学

硕士

计算机系统结构

卢显良

2004

中文

TP393.02

75

2005-07-14(万方平台首次上网日期,不代表论文的发表时间)

相关文献
评论
相关作者
相关机构
打开万方数据APP,体验更流畅