CN102375700B - 一种直接更新硬盘数据的方法 - Google Patents

一种直接更新硬盘数据的方法 Download PDF

Info

Publication number
CN102375700B
CN102375700B CN201010265682.0A CN201010265682A CN102375700B CN 102375700 B CN102375700 B CN 102375700B CN 201010265682 A CN201010265682 A CN 201010265682A CN 102375700 B CN102375700 B CN 102375700B
Authority
CN
China
Prior art keywords
hard disc
disc data
reading
operating system
hard disk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201010265682.0A
Other languages
English (en)
Other versions
CN102375700A (zh
Inventor
邝耀华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HUBEI SHENGTIAN NETWORK TECHNOLOGY Co Ltd
Original Assignee
HUBEI SHENGTIAN NETWORK TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HUBEI SHENGTIAN NETWORK TECHNOLOGY Co Ltd filed Critical HUBEI SHENGTIAN NETWORK TECHNOLOGY Co Ltd
Priority to CN201010265682.0A priority Critical patent/CN102375700B/zh
Publication of CN102375700A publication Critical patent/CN102375700A/zh
Application granted granted Critical
Publication of CN102375700B publication Critical patent/CN102375700B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明揭示了一种直接更新硬盘数据的方法,包括以下步骤:(1)获取操作系统读写硬盘数据的原始底层入口;(2)构建对应管理通道的硬盘数据临时备份空间;(3)生成用于直接更新硬盘数据的管理通道;(4)构建对应操作系统的硬盘数据临时缓存空间;(5)修改操作系统读写硬盘数据的底层入口;(6)处理来自管理通道的读写硬盘请求;(7)处理来自操作系统的读写硬盘请求。本发明能在保护状态下对硬盘数据进行直接更新,并且在更新后依然能保持硬盘数据相对于操作系统的视图完整性。对于维护大量电脑的机构或营业场所来说,应用本发明能明显提高系统的管理效率。

Description

一种直接更新硬盘数据的方法
技术领域
本发明属于数据更新方法,特别涉及一种直接更新硬盘数据的方法。
背景技术
目前,在众多的公共场所,电脑的系统安全性尤为受管理员和用户关注,人们一般会考虑通过安装还原软件或杀毒软件来增强系统的防护,但这些方案在实际运作中也存在着不足。
一方面,还原软件一般不支持在保护状态下直接对硬盘数据进行更新,即使支持更新,往往也会由于缺乏严格的硬盘数据视图完整性处理而导致系统运行不稳定。另一方面,杀毒软件虽然能在恶意程序落地的第一时间进行查杀,但需要不断更新特征库来有效甄别新的病毒。对于维护大量电脑的机构或营业场所来说,上述问题都会明显增加系统的管理成本。
有鉴于此,本领域技术人员针对上述问题,提供了一种直接更新硬盘数据的方法。
发明内容
本发明的目的在于提供一种直接更新硬盘数据的方法,克服了现有技术的困难,实现了在保护状态下对硬盘数据进行直接更新,并且在更新后依然能保持硬盘数据相对于操作系统的视图完整性的目的。
本发明的技术方案如下:
本发明提供一种直接更新硬盘数据的方法,包括以下步骤:
(1)获取操作系统读写硬盘数据的原始底层入口;
(2)构建对应管理通道的硬盘数据临时备份空间;
(3)生成用于直接更新硬盘数据的管理通道;
(4)构建对应操作系统的硬盘数据临时缓存空间;
(5)修改操作系统读写硬盘数据的底层入口;
(6)处理来自管理通道的读写硬盘请求;
(7)处理来自操作系统的读写硬盘请求。
优选地,所述步骤(1)中,所述的底层入口为文件系统层以下的较低层入口。
优选地,所述步骤(2)中,所述的临时备份空间,用于跟踪和备份管理通道写硬盘操作导致的硬盘数据变化。
优选地,所述步骤(4)中,所述的临时缓存空间,用于跟踪和缓存操作系统写硬盘操作导致的硬盘数据变化。
优选地,所述步骤(2)和步骤(4)中,所述的临时空间,联合为管理通道以及操作系统访问硬盘数据的视图完整性提供支持。
优选地,所述步骤(5)中,为操作系统读写硬盘数据设置新的底层入口,截获操作系统对硬盘数据的读写请求。
优选地,所述步骤(6)包括:
(61)当接收到来自管理通道的读硬盘请求,则直接调用原始的底层读硬盘操作入口执行;
(62)当接收到来自管理通道的写硬盘请求,则先判断当前写入位置的硬盘数据是否已经备份,当尚未备份,则调用原始的底层读硬盘操作入口读回对应位置的硬盘数据、并且保存到对应管理通道的临时备份空间;最后调用原始的底层写硬盘操作入口执行当前写入。
优选地,所述步骤(7)包括:
(71)当截获到来自操作系统的读硬盘请求,先尝试从对应操作系统的临时缓存空间读取;当未能完全满足,则继续尝试从对应管理通道的临时备份空间读取剩余数据;当依然未能完全满足,最后调用原始的底层读硬盘操作入口完成剩余数据的读取;
(72)当截获到操作系统的写硬盘请求,直接保存当前写数据到对应操作系统的临时缓存空间。
由于采用了上述技术,相比于一般的还原软件,本发明能在保护状态下对硬盘数据进行直接更新,并且在更新后依然能保持硬盘数据相对于操作系统的视图完整性。对于维护大量电脑的机构或营业场所来说,应用本发明能明显提高系统的管理效率。
以下结合附图及实施例进一步说明本申请。
附图说明
图1为本发明的直接更新硬盘数据的方法的流程图。
具体实施方式
下面通过图1来介绍本发明的具体实施例。
实施例1
如图1所示,本发明揭示的一种直接更新硬盘数据的方法,包括以下步骤:
(1)获取操作系统读写硬盘数据的原始底层入口;
(2)构建对应管理通道的硬盘数据临时备份空间;
(3)生成用于直接更新硬盘数据的管理通道;
(4)构建对应操作系统的硬盘数据临时缓存空间;
(5)修改操作系统读写硬盘数据的底层入口;
(6)处理来自管理通道的读写硬盘请求;
(7)处理来自操作系统的读写硬盘请求。
所述步骤(1)中,所述的底层入口为文件系统层以下的较低层入口。
所述步骤(2)中,所述的临时备份空间,用于跟踪和备份管理通道写硬盘操作导致的硬盘数据变化。
所述步骤(4)中,所述的临时缓存空间,用于跟踪和缓存操作系统写硬盘操作导致的硬盘数据变化。
所述步骤(2)和步骤(4)中,所述的临时空间,联合为管理通道以及操作系统访问硬盘数据的视图完整性提供支持。
所述步骤(5)中,为操作系统读写硬盘数据设置新的底层入口,截获操作系统对硬盘数据的读写请求。
所述步骤(6)包括:
(61)当接收到来自管理通道的读硬盘请求,则直接调用原始的底层读硬盘操作入口执行;
(62)当接收到来自管理通道的写硬盘请求,则先判断当前写入位置的硬盘数据是否已经备份,当尚未备份,则调用原始的底层读硬盘操作入口读回对应位置的硬盘数据、并且保存到对应管理通道的临时备份空间;最后调用原始的底层写硬盘操作入口执行当前写入。
所述步骤(7)包括:
(71)当截获到来自操作系统的读硬盘请求,先尝试从对应操作系统的临时缓存空间读取;当未能完全满足,则继续尝试从对应管理通道的临时备份空间读取剩余数据;当依然未能完全满足,最后调用原始的底层读硬盘操作入口完成剩余数据的读取;
(72)当截获到操作系统的写硬盘请求,直接保存当前写数据到对应操作系统的临时缓存空间。
为使本发明的目的、技术方案及优点更加清楚明白,以下举实施例对本发明进一步详细说明。
尽管本发明不限于此,但作为本发明的一个具体的实施例,下面结合这样一种情况来描述特定细节:工作站上有一块硬盘,硬盘上有且仅有一个分区C,并且安装了Windows XP操作系统。
本实施例中直接更新硬盘数据的方法和装置可以由一个底层内核模式驱动程序以及一个上层应用管理程来执行,例如,该底层内核模式驱动程序可命名为UpdateDriver.sys,而上层应用管理程可命名为UpdateManager.exe。
UpdateDriver在初始化时先获取Ftdisk.sys驱动程序在系统中的读写派遣入口(IRP_MJ_READ和IRP_MJ_WRITE)地址,如分别标记为RawDispatchRead和RawDispatchWrite,以此作为操作系统读写硬盘数据的原始底层入口。
接着,通过调用内核函数ExAllocatePool向系统申请一块内存区域,用以构建对应管理通道的硬盘数据临时备份空间,如标记为TempBackupSpace。该临时备份空间,用于跟踪和备份管理通道写硬盘操作导致的硬盘数据变化;其具体目的进一步在于,即使管理通道实际上修改了硬盘物理数据,但由于备份了对应修改前的原始数据到临时备份空间,从而保持了操作系统访问路径下硬盘数据的视图完整性。
接着,通过调用内核函数IoCreateDevice创建一个名为\Device\UpdateChannel的设备,用于桥接上层应用管理程序UpdateManager来直接更新硬盘数据,即生成管理通道。
接着,通过调用内核函数ExAllocatePool向系统申请一块内存区域,用以构建对应操作系统的硬盘数据临时缓存空间,如标记为TempCacheSpace。该临时缓存空间,用于跟踪和缓存操作系统写硬盘操作导致的硬盘数据变化;其具体目的进一步在于,即使操作系统逻辑上修改了硬盘数据,但由于对应的修改完全被缓存到临时缓存空间,实际上并不会影响到硬盘物理数据,从而保持了管理通道访问路径下硬盘数据的视图完整性。
接着,为Ftdisk驱动程序在系统中的读写派遣入口设置新的地址,如分别标记为NewDispatchRead和NewDispatchWrite,这样后面发生的来自操作系统的读写硬盘数据请求,将首先被派遣到新的入口地址。
当接收到UpdateManager通过管理通道发出的读硬盘请求,UpdateDriver直接调用原始的底层读硬盘操作入口RawDispatchRead执行。
当接收到UpdateManager通过管理通道发出的写硬盘请求,UpdateDriver先判断当前写入位置的硬盘数据是否已经备份,当尚未备份,则调用原始的底层读硬盘操作入口RawDispatchRead读回对应位置的硬盘数据、并且保存到对应管理通道的临时备份空间;最后调用原始的底层写硬盘操作入口RawDispatchWrite执行当前写入。
当截获到来自操作系统的读硬盘请求,也就是NewDispatchRead被调用执行,先尝试从对应操作系统的临时缓存空间读取;当未能完全满足,则继续尝试从对应管理通道的临时备份空间读取剩余数据;当依然未能完全满足,最后调用原始的底层读操作入口RawDispatchRead完成剩余数据的读取。
当截获到来自操作系统的写硬盘请求,也就是NewDispatchWrite被调用执行,直接保存当前写数据到对应操作系统的临时缓存空间。
综上可知,本发明能在保护状态下对硬盘数据进行直接更新,并且在更新后依然能保持硬盘数据相对于操作系统的视图完整性。对于维护大量电脑的机构或营业场所来说,应用本发明能明显提高系统的管理效率。
以上所述的实施例仅用于说明本发明的技术思想及特点,其目的在于使本领域内的技术人员能够了解本发明的内容并据以实施,不能仅以本实施例来限定本发明的专利范围,即凡依本发明所揭示的精神所作的同等变化或修饰,仍落在本发明的专利范围内。

Claims (6)

1.一种直接更新硬盘数据的方法,其特征在于,包括以下步骤:
(1)获取操作系统读写硬盘数据的原始读写派遣入口地址;
(2)构建对应管理通道的硬盘数据临时备份空间;
(3)生成用于直接更新硬盘数据的管理通道;
(4)构建对应操作系统的硬盘数据临时缓存空间;
(5)为操作系统读写硬盘数据设置新的读写派谴入口地址;
(6)处理来自管理通道的读写硬盘请求;
(7)处理来自操作系统的读写硬盘请求。
2.如权利要求1所述的直接更新硬盘数据的方法,其特征在于:所述步骤(2)中,所述的临时备份空间,用于跟踪和备份管理通道写硬盘操作导致的硬盘数据变化。
3.如权利要求1所述的直接更新硬盘数据的方法,其特征在于:所述步骤(4)中,所述的临时缓存空间,用于跟踪和缓存操作系统写硬盘操作导致的硬盘数据变化。
4.如权利要求2或3所述的直接更新硬盘数据的方法,其特征在于:所述步骤(2)中的临时备份空间和所述步骤(4)中的临时缓存空间,联合为管理通道以及操作系统访问硬盘数据的视图完整性提供支持。
5.如权利要求1所述的直接更新硬盘数据的方法,其特征在于:所述步骤(6)包括:
(61)当接收到来自管理通道的读硬盘请求,则直接调用所述步骤(1)获取的所述原始读写派遣入口地址中的读硬盘操作入口地址执行;
(62)当接收到来自管理通道的写硬盘请求,则先判断当前写入位置的硬盘数据是否已经备份,当尚未备份,则调用所述步骤(1)获取的所述原始读写派遣入口地址中的读硬盘操作入口地址读回对应位置的硬盘数据、并且保存到对应管理通道的临时备份空间;最后调用所述步骤(1)获取的所述原始读写派遣入口地址中的写硬盘操作入口地址执行当前写入。
6.如权利要求1所述的直接更新硬盘数据的方法,其特征在于:所述步骤(7)包括:
(71)当截获到来自操作系统的读硬盘请求,先尝试从对应操作系统的临时缓存空间读取;当未能完全满足,则继续尝试从对应管理通道的临时备份空间读取剩余数据;当依然未能完全满足,最后调用所述步骤(1)获取的所述原始读写派遣入口地址中的读硬盘操作入口地址完成剩余数据的读取;
(72)当截获到操作系统的写硬盘请求,直接保存当前写数据到对应操作系统的临时缓存空间。
CN201010265682.0A 2010-08-26 2010-08-26 一种直接更新硬盘数据的方法 Active CN102375700B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010265682.0A CN102375700B (zh) 2010-08-26 2010-08-26 一种直接更新硬盘数据的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010265682.0A CN102375700B (zh) 2010-08-26 2010-08-26 一种直接更新硬盘数据的方法

Publications (2)

Publication Number Publication Date
CN102375700A CN102375700A (zh) 2012-03-14
CN102375700B true CN102375700B (zh) 2014-03-19

Family

ID=45794357

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010265682.0A Active CN102375700B (zh) 2010-08-26 2010-08-26 一种直接更新硬盘数据的方法

Country Status (1)

Country Link
CN (1) CN102375700B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103617009A (zh) * 2013-12-10 2014-03-05 北京奇虎科技有限公司 一种开机启动中通过缓存向磁盘写数据的方法和装置
CN107656702B (zh) * 2017-09-27 2020-11-20 联想(北京)有限公司 加速硬盘读写的方法及其系统、以及电子设备
CN110221867A (zh) * 2019-05-31 2019-09-10 湖北三江航天万峰科技发展有限公司 一种xp系统下脉冲i/o功能卡通信驱动系统及方法
CN113934697B (zh) * 2021-10-21 2022-04-08 中孚安全技术有限公司 一种基于内核文件过滤驱动提升io性能方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1506852A (zh) * 2002-12-06 2004-06-23 联想(北京)有限公司 基于硬盘保护区的非保护区文件选择性安全保护方法
CN1752939A (zh) * 2004-09-22 2006-03-29 微软公司 用于综合备份和恢复的方法和系统
CN101685412A (zh) * 2008-09-22 2010-03-31 联想(北京)有限公司 一种硬盘数据的备份和恢复方法、系统及计算机

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7346804B2 (en) * 2004-09-23 2008-03-18 International Business Machines Corporation Hard disk drive data scrub methodology

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1506852A (zh) * 2002-12-06 2004-06-23 联想(北京)有限公司 基于硬盘保护区的非保护区文件选择性安全保护方法
CN1752939A (zh) * 2004-09-22 2006-03-29 微软公司 用于综合备份和恢复的方法和系统
CN101685412A (zh) * 2008-09-22 2010-03-31 联想(北京)有限公司 一种硬盘数据的备份和恢复方法、系统及计算机

Also Published As

Publication number Publication date
CN102375700A (zh) 2012-03-14

Similar Documents

Publication Publication Date Title
CN101334825B (zh) 应用程序管理和运行系统及方法
CN102708065B (zh) 一种预留页面文件的方法及计算机系统
US8819666B2 (en) Systems and methods for updating a software product
CN102216905B (zh) 为运行在计算系统中的应用创建应用还原点的方法和系统
CN102541658B (zh) 将机器转换为虚拟机
US8489552B1 (en) Generic granular restore of application data from a volume image backup
US8819487B2 (en) System reset
US20110213954A1 (en) Method and apparatus for generating minimum boot image
CN102207896A (zh) 虚拟机崩溃文件生成技术
CN104823160A (zh) 虚拟机-保留主机更新
CN102707900A (zh) 虚拟盘存储技术
JP6201049B2 (ja) 読み出し専用のシステムイメージ内のシステムレベルサービスを更新するためのシステム及び方法
US8494964B1 (en) Software as a service via virtualization
CN102375700B (zh) 一种直接更新硬盘数据的方法
CN102591675A (zh) 使用共享存储块管理多软件镜像的方法和系统
US8762778B2 (en) Firmware assisted error handling scheme
US10466924B1 (en) Systems and methods for generating memory images of computing devices
CN103309696B (zh) 一种Java卡扩展库更新方法、装置和Java卡
CN100514305C (zh) 实现操作系统安全控制的系统及方法
CN104978226A (zh) 输入输出重定向方法、虚拟化系统与方法及内容递送装置
US20200201944A1 (en) Systems and methods for write-once-read-many storage
KR20110052902A (ko) 컴퓨팅 시스템 및 컴퓨팅 시스템의 메모리 관리 방법
US20110314203A1 (en) Resource adjustment methods and systems for virtual machines
CN103577246A (zh) 防止虚拟机逃逸的方法和装置
US20150324301A1 (en) Storage control apparatus and computer-readable storage medium storing computer program

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB02 Change of applicant information

Address after: 2, No. 1, 430074 international business center, hi tech Development Zone, Wuhan, Hubei, East Lake

Applicant after: Hubei Shengtian Network Technology Co., Ltd.

Address before: 2, No. 1, 430074 international business center, hi tech Development Zone, Wuhan, Hubei, East Lake

Applicant before: Hubei ShengTian Network Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant