个人按需软件服务中的文件系统虚拟化技术

个人按需软件服务中的文件系统虚拟化技术

论文摘要

随着网络、硬件的发展和用户需求的增加,传统的“软件即产品”发布模式的弊端凸显,不能再满足更多的需求。而近年兴起的“软件即服务”模式以一种全新的方式诠释软件发布,克服了传统模式的种种弊端,现正在全球迅速普及,成为软件行业的发展热点。“软件即服务”模式即以服务的形式在网络上提供软件程序。国外已经出现了一些运作成功的提供软件服务的厂商。本文在“软件即服务”模式的基础上,提出了一种按需服务的软件系统,并对其中的文件系统虚拟化功能的关键技术进行了研究和实现。这种软件系统不仅没有了传统模式的缺点,而且可以实现了个人计算环境的移动性。用户无论身在何处,只要能上网,就可以随时获取软件服务,对用户本机只有兼容性的要求。本系统向客户提供一套客户程序包;客户运行客户程序登陆厂商服务器,获得软件服务。客户程序中包含文件系统过滤驱动和客户端应用程序,两者共同实现文件系统的虚拟化功能,即在客户机器上虚拟出一个实际存在于网络上的文件系统。文件系统过滤驱动过滤并截获客户对本机上的程序的访问,并将访问请求交给客户端应用程序;应用程序根据访问请求,调用P2P模块,从网络上的服务器和其他客户机器上获取数据,以此实现文件系统的虚拟。当客户访问服务器上的程序时,在客户看来就像在访问本机上的程序一样。在网络条件好、客户数量多的情况下,实现的效果会很好。本文通过实现客户软件包的两个部分(除P2P模块),较完整的实现了文件系统虚拟化功能。在实现过程中,针对驱动开发中具有代表性的问题给出了解决方案;在实验基础上,进行了功能/性能测试;并提出了一些设计上的优化方案,对未来的工作提出了建议。

论文目录

  • 摘要
  • Abstract
  • 第1章 引言
  • 1.1 本章引论
  • 1.2 研究背景
  • 1.2.1 “软件即产品”模式
  • 1.2.2 “软件即服务”模式
  • 1.3 研究目的和对象
  • 1.3.1 个人按需软件服务系统的提出
  • 1.3.2 系统的可行性分析与相关研究
  • 1.4 本文的主要贡献和结构安排
  • 1.4.1 本文的主要贡献
  • 1.4.2 本文的结构安排
  • 1.5 本章小结
  • 第2章 文件系统过滤驱动的原理
  • 2.1 本章引论
  • 2.2 Windows 文件系统
  • 2.2.1 用户态与内核态
  • 2.2.2 驱动对象与设备对象
  • 2.2.3 设备驱动的类别
  • 2.3 文件系统过滤驱动模型
  • 2.3.1 文件过滤驱动的功能
  • 2.3.2 开发工具DDK(Device Development Kit)
  • 2.3.3 IRP 及其各个域的介绍
  • 2.3.4 I/O 栈
  • 2.3.5 完成例程
  • 2.3.6 IRQL 介绍
  • 2.3.7 驱动入口函数和分派函数
  • 2.3.8 驱动对IRP 的一般处理过程
  • 2.3.9 自行完成IRP 的几种典型方法
  • 2.3.10 FastIO 接口
  • 2.3.11 驱动开发中的常用函数
  • 2.4 本章小结
  • 第3章 开发平台的搭建
  • 3.1 本章引论
  • 3.2 相关开发/调试软件
  • 3.2.1 winDbg 软件介绍
  • 3.2.2 SoftICE 软件介绍
  • 3.3 开发平台的选择
  • 3.3.1 开发工具的选择
  • 3.3.2 开发/调试模式的选择
  • 3.4 调试环境的使用
  • 3.4.1 编译驱动程序
  • 3.4.2 安装驱动程序
  • 3.5 本章小结
  • 第4章 文件系统过滤驱动部分
  • 4.1 本章引论
  • 4.2 原理概述
  • 4.3 框架流程
  • 4.3.1 入口函数DriverEntry
  • 4.3.2 Device Control IRP 的分派函数
  • 4.3.3 Create IRP 的分派函数
  • 4.3.4 Cleanup/Close IRP 的分派函数
  • 4.3.5 Directory Control IRP 的分派函数
  • 4.3.6 Query Info IRP 的分派函数
  • 4.3.7 Read IRP 的分派函数
  • 4.3.8 其它相关分派函数
  • 4.4 技术要点与难点
  • 4.4.1 驱动与应用程序互传数据
  • 4.4.2 设备名与盘符的转换
  • 4.4.3 文件全路径过滤
  • 4.4.4 读请求的完成
  • 4.4.5 防止遗漏处理读请求的措施
  • 4.4.6 能判断文件结尾的文件读操作
  • 4.4.7 FastIO IRP 的处理
  • 4.4.8 全局变量的互斥访问权控制
  • 4.5 设计优化方法
  • 4.5.1 用数组替代哈希表
  • 4.5.2 用FsContext 地址代替文件对象地址
  • 4.5.3 查询数据的缓存
  • 4.5.4 读数据的缓存
  • 4.5.5 进一步导出实现更完全的过滤
  • 4.5.6 Write IRP 和Set Info IRP 的导出
  • 4.5.7 多维的待处理IRP 队列
  • 4.6 本章小结
  • 第5章 客户端应用程序部分
  • 5.1 本章引论
  • 5.2 原理概述
  • 5.3 框架流程
  • 5.3.1 用户配置文件的读入和分析
  • 5.3.2 获取目标文件的信息
  • 5.3.3 构造目标目录的文件入口链
  • 5.3.4 动态创建、删除目录
  • 5.3.5 加载驱动
  • 5.3.6 向驱动发送用户初始化信息
  • 5.3.7 向驱动发送若干用户Device Control IRP
  • 5.3.8 辅助线程Service Thread 的创建和作用
  • 5.3.9 等待—处理的无限循环
  • 5.3.10 主线程的退出
  • 5.3.11 驱动程序与应用程序之间互传的数据
  • 5.4 设计优化方法
  • 5.4.1 异步处理请求
  • 5.4.2 多线程处理请求
  • 5.5 本章小结
  • 第6章 综合评测方案
  • 6.1 本章引论
  • 6.2 功能评测方案和结果
  • 6.2.1 不同大小的可执行文件
  • 6.2.2 各种读取文件的方式
  • 6.2.3 可执行文件读写日志文件
  • 6.2.4 从虚拟机移植到真实系统
  • 6.2.5 功能评测的结果
  • 6.3 性能评测方案和结果
  • 6.3.1 性能测试方案
  • 6.3.2 性能测试的数据及分析
  • 6.4 典型的错误总结及原因分析
  • 6.4.1 上下文的IRQL 达不到函数运行的要求
  • 6.4.2 获取磁盘设备名时蓝屏
  • 6.4.3 返回除成功状态外的其他状态
  • 6.4.4 多个文件进程滞留内存
  • 6.4.5 驱动卸载的错误
  • 6.4.6 调用ObQueryNameString 出错
  • 6.4.7 IoCompleteIRP 的错误调用
  • 6.5 本章小结
  • 第7章 结论
  • 参考文献
  • 致谢
  • 个人简历、在学期间发表的学术论文与研究成果
  • 相关论文文献

    • [1].基于Apache Ftpserver的可自定义文件系统的文件服务器[J]. 软件 2020(07)
    • [2].快速恢复ExFAT文件系统数据[J]. 网络安全和信息化 2019(05)
    • [3].油田设备文件系统数据存储的优化研究与分析[J]. 石化技术 2017(01)
    • [4].云文件系统中纠删码技术的研究与实现[J]. 计算机科学与探索 2013(04)
    • [5].基于虚拟文件系统的安全存储技术的研究[J]. 微电子学与计算机 2013(06)
    • [6].盘点文件系统[J]. 科技信息(科学教研) 2008(18)
    • [7].并行文件系统研究综述[J]. 小型微型计算机系统 2008(09)
    • [8].分布式文件系统与传统文件系统的比较研究[J]. 电子技术与软件工程 2015(23)
    • [9].处理CentOS 7启动错误[J]. 网络安全和信息化 2020(10)
    • [10].基于虚拟文件系统的诱骗主机安全方案研究[J]. 计算机与现代化 2013(02)
    • [11].基于镜像的在线文件系统检查工具的研究与实现[J]. 计算机系统应用 2013(08)
    • [12].海量文件系统中基于特征实现文件多维度浏览[J]. 计算机工程与科学 2017(05)
    • [13].基于堆叠文件系统的云计算存储优化[J]. 计算机工程 2014(12)
    • [14].一种分布式并行文件系统的介绍及在海洋地震数据处理中的应用[J]. 电脑与信息技术 2015(04)
    • [15].对象存储并行文件系统小文件性能优化研究[J]. 计算机工程与科学 2013(12)
    • [16].一种嵌入式实时操作系统高可靠文件系统[J]. 微电子学与计算机 2014(03)
    • [17].一种适用于集群文件系统分级存储的分布式锁设计与分析[J]. 计算机研究与发展 2012(S1)
    • [18].并行文件系统简介及主流产品对比[J]. 邮电设计技术 2012(07)
    • [19].Linux Ext2fs文件系统分析[J]. 电脑知识与技术 2010(17)
    • [20].面向容灾的强安全性虚拟文件系统[J]. 计算机工程 2009(07)
    • [21].蓝鲸集群文件系统中资源交互一致性协议[J]. 计算机工程 2008(11)
    • [22].基于准文件系统的高速大容量数据存储系统设计[J]. 机械与电子 2008(10)
    • [23].一种基于多应用智能卡文件系统的研究与实现[J]. 计算机应用与软件 2014(09)
    • [24].并行文件系统下数据迁移功能的实现[J]. 北京信息科技大学学报(自然科学版) 2012(05)
    • [25].基于文件系统过滤驱动的文档透明加解密系统的研究[J]. 电脑编程技巧与维护 2011(04)
    • [26].面向并行文件系统的性能评估及相对预测模型[J]. 软件学报 2011(09)
    • [27].并行文件系统的应用探讨[J]. 软件 2010(11)
    • [28].基于文件系统过滤驱动的文件加密系统设计[J]. 微电子学与计算机 2009(04)
    • [29].面向云文件系统的隔离性度量方法研究[J]. 计算机工程与科学 2017(07)
    • [30].基于数据库的文件系统管理工具设计与实现[J]. 计算机工程 2015(05)

    标签:;  ;  ;  ;  

    个人按需软件服务中的文件系统虚拟化技术
    下载Doc文档

    猜你喜欢