访问虚拟磁盘的方法及系统的制作方法_2

文档序号:9787710阅读:来源:国知局
截原理只对加载虚拟磁盘的进程有效,对其它进程是无效的,也就是其它进程是无权访问这个虚拟磁盘的。只有加载此模块的进程可以访问虚拟磁盘的数据,这一特性大大提升了虚拟磁盘的安全性。
[0045]利用API拦截技术,拦截所有磁盘操作,并将操作函数重新定位到本发明所模拟的函数中,模拟的函数再对虚拟磁盘存储空间上的文件系统进行操作并返回结果给系统API。本发明实现原理与基于驱动层实现的虚拟磁盘不同,且在安全性方面高于驱动层虚拟磁盘。
[0046]应当理解的是,本发明除了可应用在虚拟磁盘中,还可以用到以下几个领域:
[0047]软件安全,将虚拟磁盘模块加载到可疑的进程中,所有的读写操作都是对虚拟磁盘的操作,可以防止病毒对系统数据的损坏;
[0048]或用于提高硬件安全和硬件性能,如果虚拟磁盘的存储空间是内存,即虚拟内存磁盘,可以使用在对磁盘有进行频繁读写的进程中,提高磁盘的读写效率,提高硬件磁盘的使用寿命。
[0049]区别于现有技术,本发明实施例一加载虚拟磁盘模块,并拦截访问虚拟磁盘进程有关的API函数,是的系统在调用时,优先处理虚拟磁盘模块的文件操作模拟函数,并输出处理结果。通过上述方式,本发明的集成可以正常访问所要的数据,并同时实现进程隔离,提升虚拟磁盘的安全性。
[0050]对应地,本发明实施例二提供一种访问虚拟磁盘的系统100,包括:
[0051 ]加载注册模块110,用于启动工程,加载虚拟磁盘模块,注册对应于虚拟磁盘路径的盘符;
[0052]拦截处理模块120,用于拦截访问虚拟磁盘进程有关的API函数,使得系统在调用所述API函数时,先处理虚拟磁盘模块的文件操作模拟函数;
[0053]结果输出模块130,用于返回对模拟函数的处理结果到系统API函数中,并输出结果参数。
[0054]其中,在一个具体的实施例中,所述拦截处理模块120包括:
[0055]获取进程单元,用于获取API函数对虚拟磁盘的访问进程;
[0056]拦截判断单元,用于API拦截函数判断访问进程是否访问虚拟磁盘;
[0057]模拟处理单元,用于处理虚拟磁盘模块的文件操作模拟函数;
[0058]正常处理单元,用于将处理结果通过返回值或参数返回给调用者,执行后续逻辑请求。
[0059]其中,所述拦截判断单元具体用于:
[0060]API拦截函数通过盘符判断访问进程是否访问虚拟磁盘;或
[0061 ] API拦截函数通过访问文件的标识判断访问进程是否访问虚拟磁盘。
[0062]其中,在一个具体的实例中,虚拟磁盘模块需要创建储存空间,用于存储文件的标识、数据信息;
[0063]而对应地,拦截处理单元具体用于:
[0064]在访问文件时,访问进程指定虚拟磁盘路径,系统API被拦截的函数从文件系统中获取文件在磁盘中的存储位置,并返回对应标识;
[0065]通过对应标识,虚拟磁盘模块的文件系统获取文件在虚拟磁盘中的位置;
[0066]根据文件的数据信息及虚拟磁盘模块文件系统的文件游标位置信息,读取或写入数据。
[0067]其中,所述结果输出模块还用于:
[0068]通过调用虚拟磁盘模块文件系统的相应函数来获取数据,并返回给调用者。
[0069]以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1.一种访问虚拟磁盘的方法,其特征在于,包括: 启动工程,加载虚拟磁盘模块,注册对应于虚拟磁盘路径的盘符; 拦截访问虚拟磁盘进程有关的API函数,使得系统在调用所述API函数时,先处理虚拟磁盘模块的文件操作模拟函数; 返回对模拟函数的处理结果到系统API函数中,并输出结果参数。2.根据权利要求1所述访问虚拟磁盘的方法,其特征在于,拦截访问虚拟磁盘进程有关的API函数,使得系统在调用所述API函数时,先处理虚拟磁盘模块的文件操作模拟函数的步骤包括: 获取API函数对虚拟磁盘的访问进程; API拦截函数判断访问进程是否访问虚拟磁盘; 若是,则处理虚拟磁盘模块的文件操作模拟函数后,将处理结果通过返回值或参数返回给调用者; 反之,则直接由系统API函数进行操作,并执行后续逻辑请求,并将结果返回给调用者。3.根据权利要求2所述访问虚拟磁盘的方法,其特征在于, API拦截函数通过盘符判断访问进程是否访问虚拟磁盘;或 API拦截函数通过访问文件的标识判断访问进程是否访问虚拟磁盘。4.根据权利要求2所述访问虚拟磁盘的方法,其特征在于,虚拟磁盘模块创建储存空间,用于存储文件的标识、数据信息;其中,处理虚拟磁盘模块的文件操作模拟函数的步骤具体为: 在访问文件时,访问进程指定虚拟磁盘路径,系统API被拦截的函数从文件系统中获取文件在磁盘中的存储位置,并返回对应标识; 通过对应标识,虚拟磁盘模块的文件系统获取文件在虚拟磁盘中的位置; 根据文件的数据信息及虚拟磁盘模块文件系统的文件游标位置信息,读取或写入数据。5.根据权利要求1所述访问虚拟磁盘的方法,其特征在于,返回对模拟函数的处理结果到系统API函数中,并输出结果参数的步骤具体为: 通过调用虚拟磁盘模块文件系统的相应函数来获取数据,并返回给调用者。6.—种访问虚拟磁盘的系统,其特征在于,包括: 加载注册模块,用于启动工程,加载虚拟磁盘模块,注册对应于虚拟磁盘路径的盘符;拦截处理模块,用于拦截访问虚拟磁盘进程有关的API函数,使得系统在调用所述API函数时,先处理虚拟磁盘模块的文件操作模拟函数; 结果输出模块,用于返回对模拟函数的处理结果到系统API函数中,并输出结果参数。7.根据权利要求6所述访问虚拟磁盘的系统,其特征在于,所述拦截处理模块包括: 获取进程单元,用于获取API函数对虚拟磁盘的访问进程; 拦截判断单元,用于API拦截函数判断访问进程是否访问虚拟磁盘; 模拟处理单元,用于处理虚拟磁盘模块的文件操作模拟函数; 正常处理单元,用于将处理结果通过返回值或参数返回给调用者,执行后续逻辑请求。8.根据权利要求6所述访问虚拟磁盘的系统,其特征在于,所述拦截判断单元具体用于: API拦截函数通过盘符判断访问进程是否访问虚拟磁盘;或 API拦截函数通过访问文件的标识判断访问进程是否访问虚拟磁盘。9.根据权利要求7所述访问虚拟磁盘的系统,其特征在于,虚拟磁盘模块创建储存空间,用于存储文件的标识、数据信息; 以及,所述拦截处理单元具体用于: 在访问文件时,访问进程指定虚拟磁盘路径,系统API被拦截的函数从文件系统中获取文件在磁盘中的存储位置,并返回对应标识; 通过对应标识,虚拟磁盘模块的文件系统获取文件在虚拟磁盘中的位置; 根据文件的数据信息及虚拟磁盘模块文件系统的文件游标位置信息,读取或写入数据。10.根据权利要求6所述访问虚拟磁盘的系统,其特征在于,所述结果输出模块还用于: 通过调用虚拟磁盘模块文件系统的相应函数来获取数据,并返回给调用者。
【专利摘要】本发明公开了一种访问虚拟磁盘的方法及系统,其中方法包括:启动工程,加载虚拟磁盘模块,注册对应于虚拟磁盘路径的盘符;拦截访问虚拟磁盘进程有关的API函数,使得系统在调用所述API函数时,先处理虚拟磁盘模块的文件操作模拟函数;返回对模拟函数的处理结果到系统API函数中,并输出结果参数。通过上述方式,本发明的集成可以正常访问所要的数据,并同时实现进程隔离,提升虚拟磁盘的安全性。
【IPC分类】G06F21/56
【公开号】CN105550582
【申请号】CN201510917440
【发明人】张维超
【申请人】福建联迪商用设备有限公司
【公开日】2016年5月4日
【申请日】2015年12月11日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1