磁盘数据读取方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:26596466 阅读:32 留言:0更新日期:2020-12-04 21:18
本发明专利技术涉及磁盘数据读取方法、装置、计算机设备及存储介质,该方法包括构建与用户空间的内存映射;获取用户空间通过匹配的内核服务传输的磁盘信息;利用内核空间的超级权限返回磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据。本发明专利技术通过借助用户空间和内核空间的通信,从用户空间处获取到磁盘信息后,进行磁盘匹配,在磁盘匹配成功的情况下,读取磁盘数据至内存描述符,并通过内存映射返回该磁盘数据,利用内核空间的超级权限以解决系统开启SIP保护的情况下因权限不够而不能读取磁盘数据以进行数据恢复的问题。

【技术实现步骤摘要】
磁盘数据读取方法、装置、计算机设备及存储介质
本专利技术涉及数据读取方法,更具体地说是指磁盘数据读取方法、装置、计算机设备及存储介质。
技术介绍
在macOS10.13及以上系统开启SIP(系统完整性保护,SystemIntegrityProtection)后,用户空间会因为权限不够导致磁盘数据读取失败从而不能进行数据恢复,只能通过重启计算机进入系统恢复模式关闭SIP后再重新启动计算机才能进行数据恢复,这样的操作流程对普通用户来说,繁琐复杂,且降低了计算机的安全级别,增加使用风险;而进入恢复模式用终端命令行操作,会让用户产生计算机损坏的担心和恐惧。现有数据恢复的磁盘数据读取方法是在用户空间权限允许的情况下利用操作系统提供的文件I/OAPI(应用程序接口,ApplicationProgrammingInterface)函数进行读取操作,主要的API函数有open、seek、read、wirte以及close。在类Unix操作系统下,所有的内容都属于文件,磁盘也是一种文件,可通过open打开磁盘对象,获取一个文件描述符,通过该文件描述符利用read函数就可以读取磁盘的数据。但是这种读取方式降低系统的安全级别,增加使用风险。因此,有必要设计一种新的方法,以解决系统开启SIP保护的情况下因权限不够而不能读取磁盘数据以进行数据恢复的问题。
技术实现思路
本专利技术的目的在于克服现有技术的缺陷,提供磁盘数据读取方法、装置、计算机设备及存储介质。为实现上述目的,本专利技术采用以下技术方案:磁盘数据读取方法,包括:构建与用户空间的内存映射;获取用户空间通过匹配的内核服务传输的磁盘信息;利用内核空间的超级权限返回磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据。其进一步技术方案为:所述利用内核空间的超级权限返回磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据,包括:判断所述磁盘信息是否是卸载驱动消息;若所述磁盘信息不是卸载驱动消息,则根据所述磁盘信息进行磁盘匹配,以得到磁盘匹配结果;判断所述磁盘匹配结果是否是匹配成功;若所述磁盘匹配结果是匹配成功,则利用内核空间超级权限将磁盘数据读取至内存描述符内;通过内存映射返回所述内存描述符内的磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据。其进一步技术方案为:所述判断所述磁盘信息是否是卸载驱动消息之后,还包括:若所述磁盘信息是卸载驱动消息,则进入结束步骤。其进一步技术方案为:所述判断所述磁盘匹配结果是否是匹配成功之后,还包括:若所述磁盘匹配结果不是匹配成功,则判断所述用户空间是否传递磁盘信息;若所述用户空间传递磁盘信息,则执行所述获取用户空间通过匹配的内核服务传输磁盘信息。其进一步技术方案为:所述判断所述用户空间是否传递磁盘信息之后,还包括:若所述用户空间未传递磁盘信息,则执行所述判断所述用户空间是否传递磁盘信息。其进一步技术方案为:所述利用内核空间超级权限将磁盘数据读取至内存描述符内之后,还包括:判断将磁盘数据读取至内存描述符内是否已读取成功;若将磁盘数据读取至内存描述符内已读取成功,则执行所述通过内存映射返回所述内存描述符内的磁盘数据,以供用户空间根据内存映射成功的地址读取所述磁盘数据;若将磁盘数据读取至内存描述符内未读取成功,则执行所述判断所述用户空间是否传递磁盘信息。本专利技术还提供了磁盘数据读取装置,包括:映射单元,用于构建与用户空间的内存映射;磁盘信息获取单元,用于获取用户空间通过匹配的内核服务传输的磁盘信息;数据返回单元,用于利用内核空间的超级权限返回磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据。其进一步技术方案为:所述数据返回单元包括:信息判断子单元,用于判断所述磁盘信息是否是卸载驱动消息;磁盘匹配子单元,用于若所述磁盘信息不是卸载驱动消息,则根据所述磁盘信息进行磁盘匹配,以得到磁盘匹配结果;匹配判断子单元,用于判断所述磁盘匹配结果是否是匹配成功;读取子单元,用于若所述磁盘匹配结果是匹配成功,则利用内核空间超级权限将磁盘数据读取至内存描述符内;返回子单元,用于通过内存映射返回所述内存描述符内的磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据。本专利技术还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。本专利技术还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。本专利技术实施例与现有技术相比的有益效果是:本专利技术通过借助用户空间和内核空间的通信,从用户空间处获取到磁盘信息后,进行磁盘匹配,在磁盘匹配成功的情况下,读取磁盘数据至内存描述符,并通过内存映射返回该磁盘数据,利用内核空间的超级权限以解决系统开启SIP保护的情况下因权限不够而不能读取磁盘数据以进行数据恢复的问题。下面结合附图和具体实施例对本专利技术作进一步描述。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的磁盘数据读取方法的应用场景示意图;图2为本专利技术实施例提供的磁盘数据读取方法的流程示意图;图3为本专利技术实施例提供的磁盘数据读取方法的子流程示意图;图4为本专利技术实施例提供的磁盘数据读取装置的示意性框图;图5为本专利技术实施例提供的磁盘数据读取装置的数据返回单元的示意性框图;图6为本专利技术实施例提供的计算机设备的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的本文档来自技高网...

【技术保护点】
1.磁盘数据读取方法,其特征在于,包括:/n构建与用户空间的内存映射;/n获取用户空间通过匹配的内核服务传输的磁盘信息;/n利用内核空间的超级权限返回磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据。/n

【技术特征摘要】
1.磁盘数据读取方法,其特征在于,包括:
构建与用户空间的内存映射;
获取用户空间通过匹配的内核服务传输的磁盘信息;
利用内核空间的超级权限返回磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据。


2.根据权利要求1所述的磁盘数据读取方法,其特征在于,所述利用内核空间的超级权限返回磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据,包括:
判断所述磁盘信息是否是卸载驱动消息;
若所述磁盘信息不是卸载驱动消息,则根据所述磁盘信息进行磁盘匹配,以得到磁盘匹配结果;
判断所述磁盘匹配结果是否是匹配成功;
若所述磁盘匹配结果是匹配成功,则利用内核空间超级权限将磁盘数据读取至内存描述符内;
通过内存映射返回所述内存描述符内的磁盘数据至用户空间,以供用户空间根据内存映射成功的地址读取所述磁盘数据。


3.根据权利要求2所述的磁盘数据读取方法,其特征在于,所述判断所述磁盘信息是否是卸载驱动消息之后,还包括:
若所述磁盘信息是卸载驱动消息,则进入结束步骤。


4.根据权利要求2所述的磁盘数据读取方法,其特征在于,所述判断所述磁盘匹配结果是否是匹配成功之后,还包括:
若所述磁盘匹配结果不是匹配成功,则判断所述用户空间是否传递磁盘信息;
若所述用户空间传递磁盘信息,则执行所述获取用户空间通过匹配的内核服务传输磁盘信息。


5.根据权利要求4所述的磁盘数据读取方法,其特征在于,所述判断所述用户空间是否传递磁盘信息之后,还包括:
若所述用户空间未传递磁盘信息,则执行所述判断所述用户空间是否传递磁盘信息。


6.根据权利要求5所述的磁盘数据读取方法,其特征在于,所述利用内核空间...

【专利技术属性】
技术研发人员:唐建孙守贤
申请(专利权)人:万兴科技湖南有限公司
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1