CN102289624A - 一种基于写过滤技术的磁盘保护系统 - Google Patents
一种基于写过滤技术的磁盘保护系统 Download PDFInfo
- Publication number
- CN102289624A CN102289624A CN2011101281916A CN201110128191A CN102289624A CN 102289624 A CN102289624 A CN 102289624A CN 2011101281916 A CN2011101281916 A CN 2011101281916A CN 201110128191 A CN201110128191 A CN 201110128191A CN 102289624 A CN102289624 A CN 102289624A
- Authority
- CN
- China
- Prior art keywords
- overlayer
- disk
- layer
- internal memory
- driver layer
- 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.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供一种基于写过滤技术的磁盘保护系统,它包括从上到下依次连接的应用程序层、支持库、驱动程序层、覆盖层,所述驱动程序层分别通信连接到磁盘的被保护分区和配置信息库,所述应用程序层是用户对本保护系统进行操作和管理的接口,所述支持库是对应用程序层的封装,所述驱动程序层用于将对磁盘的写过滤数据映射到覆盖层和用于对覆盖层的选择和维护,所述覆盖层用于存储写过滤数据,所述驱动程序层采用了Windows磁盘过滤的驱动设备,在所述驱动程序层中创建一个设备“IpedDevice”。本发明能够在Windows XP和Windows 7操作系统上实现磁盘分区保护功能,同时解决受限于物理内存大小的问题。
Description
【技术领域】
本发明涉及一种Windows操作系统的系统数据保护和磁盘数据保护技术。
【背景技术】
在当前网络环境中,病毒和木马众多,稍不留心就会使系统瘫痪,或重要资料外泄。并且在某些应用场合,用户希望安装好系统和应用软件后,系统能一直处于一个稳定不变的系统环境,长期使用而不会随着时间的推移而产生很多垃圾文件,导致系统变得缓慢,甚至让病毒木马有机可乘,导致系统瘫痪或重要机密外泄,由此产生的损失是无法估量的。微软的EWF内存保护功能可以阻止用户对被保护分区的修改,防止数据被篡改,重启系统后所有在被保护分区的修改都将消失,但其在实际使用过程中有以下几个问题:
1、EWF(一种保护系统,用来保护卷以防止写入)内存保护会占用很多物理内存,长时间复杂运用会导致内存耗尽而死机;
2、因为EWF将所有对被保护分区的修改都缓存在物理内存中,受限于物理内存的大小,不能存储较大的文件,如视频文件、制图文件等;
3、只有Windows XP Embedded、Windows Embedded Standard 7操作系统上的版本,没有提供在Windows XP和Windows 7操作系统上运行的版本。
【发明内容】
本发明要解决的技术问题,在于提供一种基于写过滤技术的磁盘保护系统,它能够在Windows XP和Windows 7操作系统上实现磁盘分区保护功能,同时解决受限于物理内存大小的问题。
本发明是这样实现的:
一种基于写过滤技术的磁盘保护系统,它包括从上到下依次通信连接的应用程序层、支持库、驱动程序层、覆盖层,所述驱动程序层分别通信连接到磁盘的被保护分区和配置信息库,所述应用程序层是用户对本保护系统进行操作和管理的接口,所述支持库是对应用程序层的封装,所述驱动程序层用于将对磁盘的写过滤数据映射到覆盖层和用于对覆盖层的选择和维护,所述覆盖层用于存储写过滤数据,
所述驱动程序层采用了Windows磁盘过滤的驱动设备,在所述驱动程序层中使用IoCreateDevice创建一个用于驱动程序层和应用程序层之间通信的设备“IpedDevice”,所述应用程序层调用支持库相应的函数接口,然后使用DeciceIoControl函数通过“IpedDevice”调用驱动程序层的相应接口完成相应的功能。
进一步的,所述覆盖层包括:内存覆盖层、独立硬盘覆盖层、非独立硬盘覆盖层。
进一步的,所述保护系统根据配置信息库选择启用的覆盖层,当启用内存覆盖层时,优先使用内存覆盖层,当内存覆盖层的内存使用量达到设置值的上限时,自动切换为使用硬盘覆盖层,保障读写操作正常,当内存覆盖层的内存被程序释放后又可以自动切换为内存覆盖层,以加快读写速度,在使用硬盘覆盖层时,若存在独立的硬盘覆盖层,则优先使用独立的硬盘覆盖层。
本发明具有如下优点:
本发明不只是在Windows XP Embedded、Windows Embedded Standard 7操作系统上,还可以在Windows XP和Windows 7操作系统实现磁盘分区保护功能,用户所有针对被保护分区的修改在系统重启后都将无效。
本发明还解决了受限于物理内存大小的问题,使缓存数据可以在物理内存剩余较少时存储在磁盘中,即保留了内存缓存读写速度快的优点,又兼顾了磁盘缓存容量大的优点。
本发明实现了一次休眠多次启动的功能,从而加快系统开机速度,以及通过私有接口穿透保存特定文件的功能,并且本发明还提供了将被保护分区上修改的内容保存到被保护分区的功能,即系统重启后被保护分区上修改的内容不会失效。
【附图说明】
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明保护系统的流程图。
图2为本发明保护系统的结构框图。
图3为本发明的通信流程图。
图4为应用程序层各种操作执行的流程示意图。
图5为本保护系统的覆盖层选择和切换示意图。
图6为本发明保护系统提交算法的流程图。
【具体实施方式】
请参阅图1至图6所示,对本发明的实施例进行详细的说明。
写过滤是指将写入到被保护分区中被保护的扇区的写操作过滤出来,进行映射到其它位置,而不真实写入到要写入的被保护的扇区中。存储写过滤数据的区域我们成为覆盖层,覆盖层可以是内存、独立的硬盘分区或者利用被保护分区内的空扇区作为覆盖层(称为非独立硬盘覆盖层)。
程序的流程如图1所示,通过覆盖层映射算法,在过滤写数据时,由算法控制将写过滤数据重定向到覆盖层,即内存覆盖层、独立硬盘覆盖层或非独立硬盘覆盖层。这些所有的写过滤和数据映射对于用户层来说都是透明的。上述三种覆盖层每一种都有其优点,内存覆盖层对写过滤数据的读写速度非常快,在固态磁盘上,比正常的磁盘读写速度快5-6倍,效率非常好,但覆盖层空间有限;独立硬盘覆盖层重定向写过滤数据算法简单,并且当需要保存写过滤数据到真实扇区时,保存数据的效率比较高,但必须在开启保护前在磁盘上划分一个独立的分区作为覆盖层;非独立覆盖层直接利用被保护的剩余空间作为覆盖层进行写过滤数据的保存,算法相对复杂一点,并且保存数据到真实扇区时效率比较低,但其安装方便。可以根据使用的实际需求和用户的操作习惯来进行覆盖层的选择,比现有的保护软件提速和易用很多。
如图2,本发明一种基于写过滤技术的磁盘保护系统,它包括从上到下依次通信连接的应用程序层、支持库、驱动程序层、覆盖层,所述驱动程序层分别通信连接到磁盘的被保护分区和配置信息库,所述应用程序层是用户对本保护系统进行操作和管理的接口,所述支持库是对应用程序层的封装,所述驱动程序层用于将对磁盘的写过滤数据映射到覆盖层和用于对覆盖层的选择和维护,所述覆盖层用于存储写过滤数据。
所述驱动程序层采用Windows磁盘过滤的驱动设备,在所述驱动程序层中使用使用微软WDK(Windows驱动开发工具包)中的IoCreateDevice函数创建一个用于驱动程序层和应用程序层之间通信的名称为“IpedDevice”的设备。因为驱动程序层采用Windows磁盘过滤的驱动设备,所以用户态的应用程序与之自由通信比较困难,而所述“IpedDevice”就是专门用来驱动程序层与应用程序层之间的通信。用户层通过微软提供的API接口函数DeviceIoControl调用驱动程序层的功能,通信流程如图3所示。
应用程序层的程序各种操作的流程如图4所示,所述应用程序层调用支持库相应的函数接口,然后使用DeciceIoControl(调用接口)函数通过“IpedDevice”调用驱动程序层的相应接口完成相应的功能。
所述覆盖层包括:内存覆盖层、独立硬盘覆盖层、非独立硬盘覆盖层。如图5所示,本保护系统根据配置信息库选择启用的覆盖层,当启用内存覆盖层时,优先使用内存覆盖层,当内存覆盖层的内存使用量达到设置值的上限时,自动切换为使用硬盘覆盖层,保障读写操作正常,当内存覆盖层的内存被程序释放后又可以自动切换为内存覆盖层,以加快读写速度,在使用硬盘覆盖层时,若存在独立的硬盘覆盖层,则优先使用独立的硬盘覆盖层。
数据提交是指将保存在覆盖层中的写过滤数据写入到被保护分区真实的目标扇区中,使本次开机后的所有操作能够被保存下来,不会因为磁盘保护系统的写过滤而使修改失效,在执行了提交数据功能后,在用户使用层面上,被保护分区就和没有被保护时是一样的。此功能在用户需要保存本次数据时是很有用的,不需要用户必须关闭保护然后再更新数据。
如图6为提交算法的流程,数据提交算法分为内存覆盖层提交算法、独立硬盘覆盖层提交算法、非独立硬盘覆盖层提交算法,提交算法会自动根据覆盖层类型调用相应的算法进行数据提交。非独立覆盖层提交算法因为覆盖层数据就是保存在被保护分区的剩余空间中,所以在提交数据时,若目标扇区已经作为覆盖层使用,则必须进行扇区备份,然后再提交数据。
本保护系统的操作过程:1、安装升腾保护模式软件并重启系统。2、打开软件设置界面,选择要进行保护的分区,然后再重启系统。3、系统重启后被保护分区已在保护中,所有对该分区上数据的修改在系统重启后都无效。4、对于被保护分区,若希望重启后数据不丢失,可以在软件界面中对被保护分区执行提交数据功能。5、如缓存写过滤数据的覆盖层设置等高级功能也可以在软件界面中设置。
以上所述,仅为本发明较佳实施例而已,故不能依此限定本发明实施的范围,即依本发明专利范围及说明书内容所作的等效变化与修饰,皆应仍属本发明涵盖的范围内。
Claims (3)
1.一种基于写过滤技术的磁盘保护系统,其特征在于:它包括从上到下依次连接通信的应用程序层、支持库、驱动程序层、覆盖层,所述驱动程序层分别通信连接到磁盘的被保护分区和配置信息库,所述应用程序层是用户对本保护系统进行操作和管理的接口,所述支持库是对应用程序层的封装,所述驱动程序层用于将对磁盘的写过滤数据映射到覆盖层和用于对覆盖层的选择和维护,所述覆盖层用于存储写过滤数据;
所述驱动程序层采用了Windows磁盘过滤的驱动设备,在所述驱动程序层中使用IoCreateDevice创建一个用于驱动程序层和应用程序层之间通信的设备“IpedDevice”,所述应用程序层调用支持库相应的函数接口,然后使用DeciceIoControl函数通过“IpedDevice”调用驱动程序层的相应接口完成相应的功能。
2.根据权利要求1所述的一种基于写过滤技术的磁盘保护系统,其特征在于:所述覆盖层包括:内存覆盖层、独立硬盘覆盖层、非独立硬盘覆盖层。
3.根据权利要求2所述的一种基于写过滤技术的磁盘保护系统,其特征在于:所述保护系统根据配置信息库选择启用的覆盖层,当启用内存覆盖层时,优先使用内存覆盖层,当内存覆盖层的内存使用量达到设置值的上限时,自动切换为使用硬盘覆盖层,保障读写操作正常,当内存覆盖层的内存被程序释放后又可以自动切换为内存覆盖层,以加快读写速度,在使用硬盘覆盖层时,若存在独立的硬盘覆盖层,则优先使用独立的硬盘覆盖层。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101281916A CN102289624A (zh) | 2011-05-16 | 2011-05-16 | 一种基于写过滤技术的磁盘保护系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101281916A CN102289624A (zh) | 2011-05-16 | 2011-05-16 | 一种基于写过滤技术的磁盘保护系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102289624A true CN102289624A (zh) | 2011-12-21 |
Family
ID=45336040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101281916A Pending CN102289624A (zh) | 2011-05-16 | 2011-05-16 | 一种基于写过滤技术的磁盘保护系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102289624A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799542A (zh) * | 2012-07-12 | 2012-11-28 | 福建升腾资讯有限公司 | 扇区增量的树形多层覆盖层的磁盘保护系统及其实现方法 |
CN103593146A (zh) * | 2013-10-21 | 2014-02-19 | 福建升腾资讯有限公司 | 基于磁盘过滤的覆盖层空间切换方法及覆盖层的组建方法 |
CN105260132A (zh) * | 2015-09-18 | 2016-01-20 | 久盈世纪(北京)科技有限公司 | 一种热加载磁盘过滤驱动的方法与设备 |
CN110457899A (zh) * | 2019-08-12 | 2019-11-15 | 北京无线电测量研究所 | 一种操作系统保护系统及方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1591365A (zh) * | 2003-08-29 | 2005-03-09 | 联想(北京)有限公司 | 计算机安全系统及其实现方法 |
-
2011
- 2011-05-16 CN CN2011101281916A patent/CN102289624A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1591365A (zh) * | 2003-08-29 | 2005-03-09 | 联想(北京)有限公司 | 计算机安全系统及其实现方法 |
Non-Patent Citations (2)
Title |
---|
STEPHEN BERARD: "《在window XP Embedded中使用Ehanced write Filter》", 11 August 2004, MICROSOFT CORPORATION * |
汤小丹等: "《计算机操作系统》", 31 May 2007, 西安电子科技大学出版社 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799542A (zh) * | 2012-07-12 | 2012-11-28 | 福建升腾资讯有限公司 | 扇区增量的树形多层覆盖层的磁盘保护系统及其实现方法 |
CN102799542B (zh) * | 2012-07-12 | 2014-12-10 | 福建升腾资讯有限公司 | 扇区增量的树形多层覆盖层的磁盘保护系统及其实现方法 |
CN103593146A (zh) * | 2013-10-21 | 2014-02-19 | 福建升腾资讯有限公司 | 基于磁盘过滤的覆盖层空间切换方法及覆盖层的组建方法 |
CN103593146B (zh) * | 2013-10-21 | 2016-04-20 | 福建升腾资讯有限公司 | 基于磁盘过滤的覆盖层空间切换方法及覆盖层的组建方法 |
CN105260132A (zh) * | 2015-09-18 | 2016-01-20 | 久盈世纪(北京)科技有限公司 | 一种热加载磁盘过滤驱动的方法与设备 |
CN105260132B (zh) * | 2015-09-18 | 2018-10-02 | 久盈世纪(北京)科技有限公司 | 一种热加载磁盘过滤驱动的方法与设备 |
CN110457899A (zh) * | 2019-08-12 | 2019-11-15 | 北京无线电测量研究所 | 一种操作系统保护系统及方法 |
CN110457899B (zh) * | 2019-08-12 | 2021-06-01 | 北京无线电测量研究所 | 一种操作系统保护系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102667740B (zh) | 将数据存储装置分区与物理数据扇区的边界对齐 | |
US8650379B2 (en) | Data processing method for nonvolatile memory system | |
US8392670B2 (en) | Performance management of access to flash memory in a storage device | |
CN101815989B (zh) | 基于获取的动态存储分层配置预登台数据的方法 | |
US20150081971A1 (en) | Storage system and storage control method | |
CN103514249B (zh) | 一种数据自精简方法和系统及存储装置 | |
CN105339910B (zh) | 在混合驱动器中的虚拟nand容量扩展 | |
US20100050007A1 (en) | Solid state disk and method of managing power supply thereof and terminal including the same | |
JP2015517697A (ja) | 二次記憶装置に基づく記憶領域をキャッシュ領域として用いるストレージシステム及び記憶制御方法 | |
US7987328B2 (en) | Data archive system | |
CN101997918A (zh) | 异构san环境中的海量存储资源按需分配的实现方法 | |
CN103049216B (zh) | 固态硬盘及其数据处理方法、系统 | |
US9594508B2 (en) | Computer system having tiered block storage device, storage controller, file arrangement method and storage medium | |
CN103365786B (zh) | 数据存储方法、装置和系统 | |
CN101625897B (zh) | 用于快闪存储器的数据写入方法、储存系统与控制器 | |
CN104375784B (zh) | 一种降低虚拟磁盘管理复杂度的方法和装置 | |
CN101526886B (zh) | 一种独立磁盘冗余阵列的数据操作方法及装置 | |
KR20150012996A (ko) | 자기 랜덤 액세스 메모리(mram)를 이용하는 저장 디바이스의 메모리 어레이의 제어기 관리 | |
US8433847B2 (en) | Memory drive that can be operated like optical disk drive and method for virtualizing memory drive as optical disk drive | |
US9262096B2 (en) | Dynamic address mapping for finish in the field | |
CN103838853A (zh) | 一种基于不同存储介质的混合文件系统 | |
US9898413B2 (en) | Auto-adaptive system to implement partial write buffering for storage systems dynamic caching method and system for data storage system | |
CN102289624A (zh) | 一种基于写过滤技术的磁盘保护系统 | |
US9009440B2 (en) | Adjustment of data storage capacity provided by a storage system | |
CN104063184B (zh) | 磁盘记录方法及其非易失性存储媒体与电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20111221 |