[发明专利]一种基于虚拟化的高可用系统设计方法有效
申请号: | 201410259847.1 | 申请日: | 2014-06-12 |
公开(公告)号: | CN103996004B | 公开(公告)日: | 2018-09-04 |
发明(设计)人: | 刘璧怡;宋立伟;何志平;周雄;吴楠 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | G06F21/55 | 分类号: | G06F21/55 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于虚拟化的高可用系统设计方法,基于虚拟化技术,实现内核关键数据结构的保护策略,主要依赖于影子页表管理机制和超调用机制,以及异常处理逻辑保证正确有效执行;提出了基于客户机异常处理的高可用系统,该系统的整体系统框架主要由用户操作模块和内核模块两类模块组成。所述高可用系统设计方法,基于虚拟化技术利用客户机的降权执行和资源管理手段,对内核关键数据结构进行保护,防止恶意程序通过篡改内核关键数据从而获得控制权限的过程,有效地提高操作系统内核的可用性,有效地防止rootkit的攻击,性能损耗小,不依赖硬件架构,对应用程序和用户透明。 | ||
搜索关键词: | 一种 基于 虚拟 可用 系统 设计 方法 | ||
【主权项】:
1.一种基于虚拟化的高可用系统设计方法,其特征在于,基于虚拟化的高可用技术,实现内核关键数据结构的保护策略,依赖于影子页表管理机制和超调用机制,以及异常处理逻辑保证正确有效执行;通过客户机获得内核关键数据的地址和域信息,扩展VMCALL异常处理方式,设计超调用机制,客户机通过超调用机制与宿主机交换数据;客户机信息通过VMCALL注入到内核后,由VMCALL扩充的调用机制来获得信息和信息设置,获得对应的客户机内核数据结构的影子页表;并设置对应影子页表的写保护权限,扩充缺页异常处理程序;所述超调用机制的具体流程为:首先读取idtr获得中断向量表地址,并计算Ox80对应系统调用中断门,通过中断门获得系统调用处理函数总入口;然后扫描系统调用函数,获得call指令对应的参数,即系统调用表地址,最后通过VMCALL注入地址信息和域长信息;所述影子页表管理机制的具体流程为:步骤1、通过超调用传入系统调用表地址addr;步骤2、读取客户机状态域的CR3页表寄存器,存入页表地址base,并读取客户机页表层级lever;步骤3、根据lever和addr计算addr对应客户机页表项的偏移offset,根据base和offset得到页面项pte;步骤4、若lever=1,则通过pte或者客户机页gfn,读取客户机影子页的lever层级rlever,并读取影子页表页目录指针;步骤5、根据rlever和addr计算偏移量soffset spte;步骤6、若rlever=1,则设置spte项写保护,进而记录客户机页帧,影子页spte以及主机页pfn信息,并记录设置的域长;步骤7、若rlever=2且为大页面,则设置spte项写保护,进而记录客户机页帧,影子页spte以及主机页pfn信息,并记录设置的域长;否则,rlever非步骤6、步骤7中的情形,对于rlever‑‑,设置base为spte指向的内容,并且返回步骤5进行执行;步骤8、若lever=2且为大页面,则通过pte或者客户机页gfn,读取客户机影子页的lever层级rlever,并读取影子页表页目录指针;进行步骤5到步骤7的执行;步骤9、lever非步骤4、步骤8中的情形,对于rlever‑‑,则设置base为pte指向内容;并返回步骤3进行执行;所述基于虚拟化的高可用系统设计方法提出了一种高可用系统,该系统基于虚拟化技术,利用客户机的降权执行和资源管理手段,对内核关键数据结构进行保护。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410259847.1/,转载请声明来源钻瓜专利网。