一种磁盘还原穿透方法、装置及设备的制作方法

文档序号:6331427阅读:166来源:国知局
专利名称:一种磁盘还原穿透方法、装置及设备的制作方法
技术领域
本发明属于计算机技术领域,尤其涉及一种磁盘还原穿透方法、装置及设备。
背景技术
系统还原是windows操作系统提供的一种故障恢复机制,系统还原的目的是在不需要重新安装系统,也不会破坏数据文件的前提下使系统回到工作状态。实用程序在后台运行,并在触发事件发生时自动创建还原点。系统还原保护是对磁盘的写操作不被真正写到磁盘,从而达到保护系统的目的。磁盘还原穿透是指在已设置为磁盘还原的分区进行写操作。windows操作系统本身提供的系统还原功能仅局限于对特定的系统文件和应用程序的核心设置,例如.exe、. dll、. inf、. ini、. msi、. ole和.sys文件等的监测。这种方法对计算机系统的还原是局部的,只能进行局部的还原,同时,当用户需要在已设置为磁盘还原状态下的磁盘分区上进行写操作时,无法进行磁盘还原的穿透,导致磁盘还原状态下的对磁盘的修改等写操作的操作麻烦。

发明内容
本发明实施例的目的在于提供一种磁盘还原穿透方法,旨在解决由于在已设置为磁盘还原状态下的磁盘分区上进行写操作时,无法进行磁盘还原的穿透,导致磁盘还原状态下的对磁盘的修改等写操作的操作麻烦的问题。本发明实施例是这样实现的,一种磁盘还原穿透方法,所述方法包括下述步骤截获接收到的对磁盘的写操作指令;检测所述写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令;当所述写操作指令为对预先创建的虚拟磁盘设备的写操作指令时,在存储的虚拟磁盘设备与磁盘分区的关联关系表中对预先创建的虚拟磁盘设备执行匹配操作,获取与所述对预先创建的虚拟磁盘设备对应的磁盘分区;根据接收到的对磁盘的写操作指令对获取的磁盘分区进行写操作。本发明实施例的另一目的在于提供一种磁盘还原穿透装置,所述装置包括写操作指令截获单元,用于截获接收到的对磁盘的写操作指令;写操作指令检测单元,用于检测所述写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令;磁盘分区获取单元,用于当所述写操作指令为对预先创建的虚拟磁盘设备的写操作指令时,在存储的虚拟磁盘设备与磁盘分区的关联关系表中对预先创建的虚拟磁盘设备执行匹配操作,获取与所述对预先创建的虚拟磁盘设备对应的磁盘分区;以及写操作执行单元,用于根据接收到的对磁盘的写操作指令对获取的磁盘分区进行写操作。本发明实施例的另一目的在于提供一种包含磁盘还原穿透装置的设备,所述磁盘还原穿透装置包括写操作指令截获单元,用于截获接收到的对磁盘的写操作指令;写操作指令检测单元,用于检测所述写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令;磁盘分区获取单元,用于当所述写操作指令为对预先创建的虚拟磁盘设备的写操作指令时,在存储的虚拟磁盘设备与磁盘分区的关联关系表中对预先创建的虚拟磁盘设备执行匹配操作,获取与所述对预先创建的虚拟磁盘设备对应的磁盘分区;以及写操作执行单元,用于根据接收到的对磁盘的写操作指令对获取的磁盘分区进行写操作。本发明实施例通过检测接收到的对磁盘的写操作指令,当接收到的对磁盘的写操作指令为对虚拟磁盘设备的写操作指令时,判断其为磁盘还原的穿透操作,继而按照写操作指令对与虚拟磁盘设备对应的磁盘分区进行写操作,从而解决了磁盘还原保护状态下无法保存用户修改的问题,使得用户能够根据需要方便地保存其对磁盘分区中数据的修改, 使得磁盘还原保护下的操作更加人性化。


图1是本发明第一实施例提供的磁盘还原穿透方法的实现流程图;图2是本发明第二实施例提供的磁盘还原穿透方法的实现流程图;图3是本发明第三实施例提供的磁盘还原穿透装置的结构图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明实施例通过判断接收到的写操作指令,当其为对虚拟磁盘设备的写操作, 即穿透操作时按照写操作指令对与虚拟磁盘设备对应的磁盘分区进行写操作,从而解决了磁盘还原保护状态下无法保存用户修改的问题,使得用户能够根据需要方便地保存其对磁盘分区的修改,使得磁盘还原保护下的操作更加人性化。本发明实施例提供了一种磁盘还原穿透方法,所述方法包括下述步骤接收应用程序的写操作指令;将预先创建的磁盘还原分区对应的虚拟磁盘设备挂载到预置的挂载点,保存挂载点与所述虚拟磁盘设备的关联关系;将所述接收到的应用程序的写操作指令中的写操作路径与所述关联关系中的挂载点进行比对,判断所述接收到的应用程序的写操作指令是否为对所述虚拟磁盘设备的写操作指令;当所述接收到的应用程序的写操作指令为对所述虚拟磁盘设备的写操作指令时, 按照所述接收到的应用程序的写操作指令对与虚拟磁盘设备对应的磁盘还原分区进行写操作。本发明实施例还提供了一种磁盘还原穿透装置,所述装置包括
写操作指令接收单元,用于接收应用程序的写操作指令;虚拟磁盘设备挂载单元,用于将预先创建的磁盘还原分区对应的虚拟磁盘设备挂载到预置的挂载点,保存挂载点与所述虚拟磁盘设备的关联关系;写操作指令检测单元,用于将所述接收到的应用程序的写操作指令中的写操作路径与所述关联关系中的挂载点进行比对,判断所述接收到的应用程序的写操作指令是否为对所述虚拟磁盘设备的写操作指令;以及写操作执行单元,用于当所述接收到的应用程序的写操作指令为对所述虚拟磁盘设备的写操作指令时,按照所述接收到的应用程序的写操作指令对与虚拟磁盘设备对应的磁盘还原分区进行写操作。本发明实施例还提供了一种包含有磁盘还原穿透装置的设备,所述磁盘还原穿透装置包括写操作指令接收单元,用于接收应用程序的写操作指令;虚拟磁盘设备挂载单元,用于将预先创建的磁盘还原分区对应的虚拟磁盘设备挂载到预置的挂载点,保存挂载点与所述虚拟磁盘设备的关联关系;写操作指令检测单元,用于将所述接收到的应用程序的写操作指令中的写操作路径与所述关联关系中的挂载点进行比对,判断所述接收到的应用程序的写操作指令是否为对所述虚拟磁盘设备的写操作指令;以及写操作执行单元,用于当所述接收到的应用程序的写操作指令为对所述虚拟磁盘设备的写操作指令时,按照所述接收到的应用程序的写操作指令对与虚拟磁盘设备对应的磁盘还原分区进行写操作。本发明实施例通过检测接收到的对磁盘的写操作指令,当接收到的对磁盘的写操作指令为对虚拟磁盘设备的写操作指令时,判断其为磁盘还原的穿透操作,继而按照写操作指令对与虚拟磁盘设备对应的磁盘分区进行写操作,从而解决了磁盘还原保护状态下无法保存用户修改的问题,使得用户能够根据需要方便地保存其对磁盘分区中数据的修改, 使得磁盘还原保护下的操作更加人性化。以下结合具体实施例对本发明的具体实现进行详细描述实施例一图1示出了本发明第一实施例提供的磁盘还原穿透方法的实现流程,详述如下在步骤SlOl中,截获接收到的对磁盘的写操作指令;在本发明实施例中,截获的对磁盘的写操作可以是Word、Excel等应用软件保存操作,也可以是.exe、. dll、. inf、. ini、. msi、. ole和.sys等文件对应的程序的写操作,但不限于这些程序。在本发明实施例中,可以安装相应HOOK(钩子)函数用于监视并截获对磁盘分区的磁盘操作,截获到相应的磁盘操作后,交给检测程序进行处理。在步骤S102中,检测所述写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令;在本发明实施例中,挂载点是指计算机系统中的磁盘文件系统的入口目录,在 liniDuimix操作系统中常见的硬件设备、磁盘分区等都被视作文件,对设备、磁盘的访问被视为读写对应的文件,类似于windows中的用来访问不同分区的D:、E:等盘符。在实际情况中,windows也支持将一个磁盘分区挂在一个文件夹下面。因此,挂载点是访问磁盘还原分区对应的虚拟磁盘设备的入口。在本发明实施例中,预先创建配置的磁盘还原保护的磁盘分区对应的虚拟磁盘设备,并挂载到相应的挂载点,挂载点与虚拟磁盘设备关联关系是由操作系统进行保存和维护的。在本发明实施例中,可以通过将写操作指令中的写操作的磁盘路径与预先创建的虚拟磁盘设备的挂载点进行比对,检测写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令。在步骤S103中,当写操作指令为对预先创建的虚拟磁盘设备的写操作指令时,在存储的虚拟磁盘设备与磁盘分区的关联关系表中对预先创建的虚拟磁盘设备执行匹配操作,获取与对预先创建的虚拟磁盘设备对应的磁盘分区;在本发明实施例中,写操作指令中包含有操作符、操作地址、操作对象等信息。通过将接收到的写操作指令中的写操作路径与关联关系中的挂载点进行比对,可以知道对磁盘的写操作指令是否为对虚拟磁盘设备的操作。在步骤S104中,根据接收到的对磁盘的写操作指令对获取的磁盘分区进行写操作。在本发明实施中,当用户需要在已设置磁盘还原保护的磁盘分区中进行写操作时,将磁盘分区对应的预先创建的虚拟磁盘设备挂载到相应的挂载点,通过写操作中的虚拟磁盘设备来区分用户的磁盘操作,从而将对磁盘分区的数据的修改保存到磁盘分区,完成磁盘还原保护状态下的磁盘分区的穿透。实施例二 图2示出了本发明第二实施例提供的磁盘还原穿透方法的实现流程,详述如下在步骤S201中,截获接收到的对磁盘的写操作指令;在步骤S202中,检测写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令,是则执行步骤S203,否则执行步骤S205 ;在步骤S203中,在存储的虚拟磁盘设备与磁盘分区的关联关系表中对预先创建的虚拟磁盘设备执行匹配操作,获取与对预先创建的虚拟磁盘设备对应的磁盘分区;在步骤S204中,根据接收到的对磁盘的写操作指令对获取的磁盘分区进行写操作;在步骤S205中,判断接收到的对磁盘的写操作指令是否为对预先创建的预留空闲磁盘扇区映射文件的写操作,是则执行步骤S209,否则执行步骤S206 ;在步骤S206中,将接收到的对磁盘的写操作的磁盘地址信息与预留空闲磁盘扇区映射文件中的已使用磁盘扇区地址信息进行比对,获取已使用扇区对应的预留空闲磁盘扇区的地址信息;在步骤S207中,根据配置的重定向算法将接收到的对磁盘的写操作重定向到磁盘分区的空闲磁盘扇区;在步骤S208中,在重定向到的空闲磁盘扇区执行接收到的对磁盘的写操作。在步骤S209中,拒绝对预留空闲磁盘扇区映射文件的写操作。在本发明实施例中,当在设置磁盘还原保护的磁盘分区中进行写操作时,如果不是对磁盘分区对应的虚拟磁盘设备的写操作,则不能实施磁盘分区的穿透,写操作的内容只能被保存在另外指定的空闲磁盘分区,不能实现对已有内容的覆盖,从而达到对磁盘内容某一阶段的状态的保存,利于以后磁盘还原。实施例三图3示出了本发明第三实施例提供的磁盘还原穿透装置的结构,为了便于说明, 仅示出了与本发明实施例相关的部分。虚拟磁盘设备创建单元301,用于创建磁盘分区对应的虚拟磁盘设备;在本发明实施例中,虚拟磁盘设备是在系统启动时创建的,在具体的实施过程中, 可以将本发明实施例置于Windows驱动程序模型WDM框架下的分层过滤驱动程序中,由分层过滤驱动程序执行虚拟磁盘设备的创建。虚拟磁盘设备挂载单元302,用于将虚拟磁盘设备创建单元创建的虚拟磁盘设备挂载到挂载点,保存虚拟磁盘设备及其挂载点的对应关系;在本发明实施例中,预先创建配置的磁盘还原保护的磁盘分区对应的虚拟磁盘设备,并挂载到相应的挂载点,挂载点与虚拟磁盘设备关联关系是由操作系统的磁盘文件系统进行保存和维护的。写操作指令截获单元303,用于截获接收到的对磁盘的写操作指令;在本发明实施例中,可以安装相应HOOK(钩子)函数用于监视并截获对磁盘分区的磁盘操作,截获到相应的磁盘操作后,交给检测程序进行处理。或设置专门的进程进行监测、截获。写操作指令检测单元304,用于检测写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令;磁盘分区获取单元305,用于当写操作指令为对预先创建的虚拟磁盘设备的写操作指令时,在存储的虚拟磁盘设备与磁盘分区的关联关系表中对预先创建的虚拟磁盘设备执行匹配操作,获取与预先创建的虚拟磁盘设备对应的磁盘分区;写操作执行单元306,用于根据接收到的对磁盘的写操作指令对获取的磁盘分区进行写操作。映射关系文件创建单元307,用于创建用于储存预先配置磁盘还原的磁盘分区的已使用磁盘扇区地址信息与空闲磁盘扇区地址信息的映射关系文件。写操作判断单元308,用于判断接收到的对磁盘的写操作指令是否为对预先创建的预留空闲磁盘扇区映射文件的写操作;空闲磁盘扇区获取单元309,用于当接收到的对磁盘的写操作指令不是对预留空闲磁盘扇区映射文件的写操作时,将接收到的对磁盘的写操作的磁盘地址信息与预留空闲磁盘扇区映射文件中的已使用磁盘扇区地址信息进行比对,获取已使用扇区对应的预留空闲磁盘扇区的地址信息;写操作重定向单元310,用于根据配置的重定向算法将接收到的对磁盘的写操作重定向到空闲磁盘扇区获取单元309获取的磁盘分区的空闲磁盘扇区;空闲磁盘操作执行单元311,用于对写操作重定向单元定向到的空闲磁盘扇区执行写对磁盘的写操作指令。在本发明实施例中,通过检测对磁盘的写操作请求,在检测到写操作请求是对虚拟磁盘设备的写操作请求时,判断写操作是对请求的虚拟磁盘设备对应的磁盘还原分区的磁盘分区进行写操作,进而对磁盘分区的进行写操作,实现磁盘还原保护状态下磁盘分区的穿透,如果不是对虚拟磁盘设备的写操作请求,则将写操作重定向到预先配置的空闲磁盘分区进行写操作,从而达到磁盘内容的保护、磁盘的还原保护。该磁盘还原穿透装置可以用于具有可写操作的磁盘系统,例如口袋计算机 (Pocket Personal Computer,PPC)、掌上电脑、计算机、笔记本电脑、个人数字助理 (Personal Digital Assistant, PDA)等磁盘系统中,可以是运行于这些设备内的软件单元、硬件单元或者软硬件相结合的单元,也可以作为独立的挂件集成到这些计算机设备中或者运行于这些设备中的应用系统中。本发明实施例通过将接收到的对磁盘的写操作指令中的写操作路径与所述关联关系中的挂载点进行比对,当接收到的应用程序的写操作指令为对虚拟磁盘设备的写操作指令时,判断其为磁盘还原保护状态下磁盘分区的穿透操作,继而按照写操作指令对与虚拟磁盘设备对应的磁盘分区进行写操作,从而解决了磁盘还原保护状态下无法保存磁盘内容修改的问题,使得用户能够根据需要方便地保存其对磁盘还原保护的磁盘分区的修改, 使得磁盘还原保护下的操作更加人性化。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种磁盘还原穿透方法,其特征在于,所述方法包括下述步骤 截获接收到的对磁盘的写操作指令;检测所述写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令; 当所述写操作指令为对预先创建的虚拟磁盘设备的写操作指令时,在存储的虚拟磁盘设备与磁盘分区的关联关系表中对预先创建的虚拟磁盘设备执行匹配操作,获取与所述对预先创建的虚拟磁盘设备对应的磁盘分区;根据接收到的对磁盘的写操作指令对获取的磁盘分区进行写操作。
2.如权利要求1所述的方法,其特征在于,所述截获接收到的对磁盘的写操作指令的步骤之前,所述方法进一步包括下述步骤创建磁盘分区对应的虚拟磁盘设备;将所述虚拟磁盘设备挂载到挂载点,保存所述虚拟磁盘设备及其挂载点的对应关系。
3.如权利要求1所述的方法,其特征在于,当所述写操作指令不是对预先创建的虚拟磁盘设备的写操作指令时,所述方法进一步包括下述步骤判断接收到的对磁盘的写操作指令是否为对预先创建的预留空闲磁盘扇区映射文件的写操作;当接收到的对磁盘的写操作指令不是为对预留空闲磁盘扇区映射文件的写操作时,将接收到的对磁盘的写操作的磁盘地址信息与所述预留空闲磁盘扇区映射文件中的已使用磁盘扇区地址信息进行比对,获取已使用扇区对应的预留空闲磁盘扇区的地址信息;根据配置的重定向算法将所述接收到的对磁盘的写操作重定向到磁盘分区的空闲磁盘扇区;在所述重定向到的空闲磁盘扇区执行所述接收到的对磁盘的写操作。
4.如权利要求3所述的方法,其特征在于,所述判断接收到的对磁盘的写操作指令是否为对预先创建的预留空闲磁盘扇区映射文件的写操作的步骤之前,所述方法进一步包括下述步骤创建用于储存预先配置磁盘还原的磁盘分区的已使用磁盘扇区地址信息与空闲磁盘扇区地址信息的映射关系文件。
5.一种磁盘还原穿透装置,其特征在于,所述装置包括写操作指令截获单元,用于截获接收到的对磁盘的写操作指令; 写操作指令检测单元,用于检测所述写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令;磁盘分区获取单元,用于当所述写操作指令为对预先创建的虚拟磁盘设备的写操作指令时,在存储的虚拟磁盘设备与磁盘分区的关联关系表中对预先创建的虚拟磁盘设备执行匹配操作,获取与所述对预先创建的虚拟磁盘设备对应的磁盘分区;以及写操作执行单元,用于根据接收到的对磁盘的写操作指令对获取的磁盘分区进行写操作。
6.如权利要求5所述的装置,其特征在于,所述装置还包括虚拟磁盘设备创建单元,用于创建磁盘分区对应的虚拟磁盘设备;以及虚拟磁盘设备挂载单元,用于将所述虚拟磁盘设备创建单元创建的虚拟磁盘设备挂载到挂载点,保存所述虚拟磁盘设备及其挂载点的对应关系。
7.如权利要求5所述的装置,其特征在于,所述装置还包括写操作判断单元,用于判断接收到的对磁盘的写操作指令是否为对预先创建的预留空闲磁盘扇区映射文件的写操作;空闲磁盘扇区获取单元,用于当接收到的对磁盘的写操作指令不是为对预留空闲磁盘扇区映射文件的写操作时,将接收到的对磁盘的写操作的磁盘地址信息与所述预留空闲磁盘扇区映射文件中的已使用磁盘扇区地址信息进行比对,获取已使用扇区对应的预留空闲磁盘扇区的地址信息;写操作重定向单元,用于根据配置的重定向算法将所述接收到的对磁盘的写操作重定向到所述空闲磁盘扇区获取单元获取的磁盘分区的空闲磁盘扇区;以及空闲磁盘操作执行单元,用于对所述写操作重定向单元定向到的空闲磁盘扇区执行所述接收到的对磁盘的写操作。
8.如权利要求6所述的装置,其特征在于,所述装置还包括映射关系文件创建单元,用于创建用于储存预先配置磁盘还原的磁盘分区的已使用磁盘扇区地址信息与空闲磁盘扇区地址信息的映射关系文件。
9.一种磁盘系统,其特征在于,所述系统包括权利要求5至8任一权利要求所述的操作应用树的装置。
10.一种计算机设备,其特征在于,所述设备包括权利要求9所述的磁盘系统。
全文摘要
本发明适用于计算机技术领域,提供了一种磁盘还原穿透方法、装置及设备,所述方法包括下述步骤截获接收到的对磁盘的写操作指令;检测所述写操作指令是否为对预先创建的虚拟磁盘设备的写操作指令;当所述写操作指令为对预先创建的虚拟磁盘设备的写操作指令时,获取与所述对预先创建的虚拟磁盘设备对应的磁盘分区;根据接收到的对磁盘的写操作指令对获取的磁盘分区进行写操作。本发明通过写操作对象来区分写操作的类型,解决了磁盘还原保护状态下无法将对磁盘分区的数据修改进行保存的问题,使得用户能够根据需要方便地保存其对磁盘还原保护状态下的磁盘分区数据的修改,实现了磁盘还原的穿透,使得磁盘还原保护下的操作更加人性化。
文档编号G06F3/06GK102385486SQ20101027206
公开日2012年3月21日 申请日期2010年9月3日 优先权日2010年9月3日
发明者万山 申请人:深圳市拾三意强者科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1