下载此文档

在重复数据删除中支持文件并发读写的方法.docx


文档分类:IT计算机 | 页数:约2页 举报非法文档有奖
1/2
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/2 下载此文档
文档列表 文档介绍
在重复数据删除中支持文件并发读写的方法
专利名称:在重复数据删除中支持文件并发读写的方法
技术领域:
本发明涉及一种文件备份处理方法,特别涉及一种在重复数据删除中支持文件并发读写的方法。
背景技术:
重复数据删除是一种数据缩减技术入至环状缓存中,用以提供给服务程序进行重复数据删除程序130。并且在开始写入处理时,会设定写入旗标,藉以令其它客户端100禁用此一文件。同理,在停止写入处理开始时,也会设定停止旗标,令其它客户端100可以使用此一目标文件140。在完成上述的写入/停止写入的相关处理后,将会清除写入旗标(或停止旗标)。为能清楚的描述操作请求与设备底层的操作,因此以微软公司所推出的视窗作业系统为例作为说明,但其运作架构可被运用于其它作业系统中。视窗程序的驱动架构(Window Driver Model, WDM Driver)是在接收到操作请求后,才
开始进行输入/输出需求的处理。这其中包含了数据读取、写入、硬体装置控制、电源管理、中断处理以及WDM Driver生命周期的开始与结束等操作,这些都是WDM Driver所必须支持的输入/输出的操作。环状缓存(Ring Buffer)是设置于中断驱动程序与用户端服务之间的共享内存。 环状缓存用于处理IRP_MJ_WRITE命令。IRP_MJ_WRITE命令用以当应用程序要由底层的硬体装置(如硬盘、USB随身碟)写入数据时,会对负责该装置运行的WDM Driver送出IRP_ MJ_WRITE命令。由中断驱动程序110负责将数据写入环状缓存,用户端服务则负责从环状缓存中将数据读出。图3A为用户端服务与中断驱动程序110对于环状缓存的存取示意图。在中断驱动程序110与用户端服务之间设置有一共享内存,共享内存用于处理IRP_MJ_ READ命令。当用户端服务负责写入时,中断驱动程序110负责读出。IRP_MJ_READ命令用以当应用程序要由底层的硬体装置(如硬盘、U盘)读取数据时,会对负责该装置运行的WDM Driver送出IRP_MJ_READ命令。图为用户端服务与中断驱动程序对于共享内存的存取示意图。在处理IRP_MJ_WRITE命令时,对于环状缓存的使用了生产者/消费者的模式 (producer/consumer)。其中,将中断驱动程序110作为生产者(producer),用以负责向其中写入数据;环状缓存为消费者(consumer)。中断驱动程序110会不断查询环状缓存检测是否有足够的剩余空间进行写入操作。当用户端服务作为消费者时,用户端服务负责从环状缓存中读出数据进行处理。 当检测到环状缓存的数据开始有变化时,用户端服务即知道有数据要处理,处理完成后更新用户端服务,以便中断驱动程序110可以继续写入数据。因此在进行目标文件140的读写的处理就如同图4所示,其包括以下步骤步骤S410 读取的目标文件的位移量与长度;步骤S420 判断目标文件的位移量与长度是否存在于环状缓存;步骤S430 若存在时,则将目标文件的位移量与长度复制到共享内存;若不存在时,则跳至步骤S440 ;步骤S440 判断剩余的读取长度是否为0 ;步骤S450 若剩余的读取长度非0时,则从客户端继续取得目标文件的相应数据;步骤S460 将所取得的数据复制到共享内存中;以及步骤S470 若剩余的读取长度0时,则结束目标文件

在重复数据删除中支持文件并发读写的方法 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数2
  • 收藏数0 收藏
  • 顶次数0
  • 上传人开心果
  • 文件大小17 KB
  • 时间2022-06-27