当前位置: 首页 > 专利查询>英特尔公司专利>正文

基于虚拟化的块内工作负荷隔离制造技术

技术编号:13883363 阅读:73 留言:0更新日期:2016-10-23 16:38
本公开一般地提供用于基于虚拟化的块内工作负荷隔离的系统、设备、方法和计算机可读介质。该系统可包括创建安全虚拟化环境或沙箱的虚拟机管理器(VMM)模块。该系统还可包括将数据加载到沙箱的第一区域中并且基于数据生成工作负荷包的处理器块。工作负荷包被存储在沙箱的第二区域中。该系统可进一步包括从工作负荷包取回并执行指令的操作块。

【技术实现步骤摘要】
【国外来华专利技术】
本公开涉及块内工作负荷隔离,例如在片上系统(SoC)的组件块上,并且更具体地涉及采用安全性引擎或虚拟机管理器(VMM)的块内工作负荷隔离。
技术介绍
诸如例如片上系统(SoC)或其它类型的平台之类的计算系统典型地具有一个或多个处理器或核以及其它操作块或组件,其它操作块或组件可包括设备控制器、图形处理器、音频处理器、通信模块等。这些操作块往往能够以与处理器可执行多个线程的方式类似的方式执行多个工作负荷。在这种情况下可以出现安全性问题。在操作块上执行的不受信工作负荷可以无意或恶意地干扰在相同操作块上的另一个工作负荷的执行(即块内干扰)。例如,在媒体引擎(图形、成像、视频等)上执行的不同工作负荷可能潜在地彼此干扰(无论恶意还是无意),从而破坏工作负荷的正常流或期望的操作。虽然访问控制机制对于块间事务和/或块到存储器事务可能是可用的,但是这些技术没有解决块内干扰的问题,随着工业进一步朝着异构计算和并行工作负荷执行前进,块内干扰的问题正变得越来越重要。附图说明随着下面的具体实施方式的继续进行,并且在参考附图时,要求保护的主题的实施例的特征和优点将变得显而易见,其中相同的附图标记描绘相同的部件,并且在附图中:图1图示与本公开一致的一个示例性实施例的顶层系统图;图2图示与本公开一致的一个示例性实施例的框图;图3图示与本公开一致的一个示例性实施例的操作的流程图;图4图示与本公开一致的另一个示例性实施例的框图;图5图示与本公开一致的另一个示例性实施例的操作的流程图;以及图6图示与本公开一致的另一个示例性实施例的平台的系统图。虽然下面的具体实施方式将继续进行,同时对说明性的实施例进行参考,但是许多替代方案、修改及其变型将对本领域技术人员显而易见。具体实施方式通常,本公开提供用于基于虚拟化的块内工作负荷隔离的系统、设备、方法和计算机可读介质。例如片上系统(SoC)的系统可包括处理块(核或CPU)、存储器和一个或多个其它操作块或组件,诸如例如设备控制器、图形处理器(GPU)、音频处理器、成像设备、通信模块等。每个操作块可被配置成执行多个工作负荷。工作负荷可由CPU生成,并且作为工作负荷包被提交给操作块以用于执行。工作负荷可被生成并且安全地存储在存储器中(例如使用基于虚拟化和页表的访问),以包含沙箱中的工作负荷。虚拟机管理器(VMM)或其它类型的安全性引擎可被配置成允许操作块在特定上下文中执行来自沙箱的工作负荷,使得在包括其它沙箱中的其它工作负荷的该操作块上执行的任何其它代码可以不访问该沙箱。因此虚拟化可用于在操作块内提供工作负荷隔离,包括与工作负荷相关联的代码、数据(存储器或寄存器内容)和状态信息的隔离,如以下将更详细地描述的。基于工作负荷执行,VMM还可被配置成允许操作块将结果安全地写回沙箱中。图1图示与本公开一致的一个示例性实施例的顶层系统图100。系统102被示为包括许多块或组件,包括处理器104、存储器106、VMM 108和被配置用于工作负荷隔离的一个或多个操作块110-1,... 110-n,该系统102可能是固定或移动的片上系统(SoC)或者其它类型的计算或通信平台。在一些实施例中,例如互联网服务供应商的第三方实体(未示出)可将请求发送给系统102。为了满足这些请求,处理器104可生成并提交工作负荷给操作块110之一,用于与其它工作负荷一起执行。执行的结果可被返回给第三方实体,并且处理器102可证明由于系统的工作负荷隔离能力的结果的安全性或完整性,如以下将更详细地描述的。图2图示与本公开一致的一个示例性实施例的框图200。处理器104可被配置成执行一个或多个进程(或线程),例如进程A 202、进程B 204和进程C 206。这些进程可包括操作系统(OS)、应用程序或任何其它系统或用户软件组件。这些进程202、204、206中的一个或多个可与做出进程的请求的外部或第三方实体(例如互联网服务供应商)通信。最终可以生成的工作负荷的形式将这些请求分派任务给操作块110中的一个或多个,如以下描述的。操作块110被示为包括可能是处理器或电路的块引擎214,处理器或电路被配置成执行一个或多个工作负荷,例如工作负荷A 216、工作负荷 B218和工作负荷C220。工作负荷可与进程相关联(例如由进程生成或代表进程)。例如,工作负荷A 216可与进程A 202相关联,等等,虽然这无须是这种情况。工作负荷可被彼此分离(例如通过虚拟化硬件支持或其它合适的机制),以提供安全性并且防止在给定的操作块上的工作负荷之间的无意或恶意干扰。CPU虚拟化208由VMM 208生成,作为处理器104、进程202、204、206、存储器106和操作块110之间的接口。页表可用作该虚拟化的部分,以在物理和虚拟地址之间变换并维持对与沙箱相关联的存储器106的受保护区域或页210的访问控制(例如读取/写入/执行)。类似地,基于页表和访问控制,设备虚拟化212由VMM 208生成,作为操作块110与处理器104和存储器106之间的接口。VMM被配置成提供虚拟化环境,虚拟化环境充当用于工作负荷的安全容器或沙箱。沙箱受到保护以免于托管它的进程,并且受到保护以免于处理器104上的OS和其它进程,使得平台上的恶意软件不可以干扰工作负荷的生成。沙盘还受到保护以免于在操作块上执行的其它工作负荷和软件组件。在一些实施例中,对于包含工作负荷包的沙箱的区域,VMM可将访问控制设置成对于除了沙箱内的代码以外的所有实体不可执行。沙箱从而在操作块内提供工作负荷隔离,包括与工作负荷相关联的代码、数据(存储器或寄存器内容)和状态信息的隔离。在一些实施例中,操作块可包括被配置成监视工作负荷的上下文并实施访问控制策略(例如读取/写入/执行许可)的存储器访问控制器。图3图示与本公开一致的一个示例性实施例的操作300的流程图。更详细地示出在图的左侧上的处理器104的操作以及在图的右侧上的块110的操作之间的交互。在操作302处,处理器例如从第三方或其它实体接收​​请求。请求可包括以任何合适格式的代码和/或数据。在操作304处,处理器使用VMM 108或任何其它类型的安全性引擎创建安全虚拟化环境(例如沙箱)。在操作306处,处理器将代码/数据加载到沙箱的区域(或页)中,并且在操作308处例如使用加密技术或任何其它合适的验证机制认证它。在操作310处,基于提供的代码/数据或基于从另一个源获得的或本地创建的附加信息,处理器生成工作负荷包。工作负荷包也被存储在沙箱中,例如在可能或可能不在任何程度上与第一区域重叠的第二区域中。可通过任何合适类型的变换、转换、拆包和/或解密过程从提供的代码/数据中生成工作负荷包。生成的工作负荷包可包括适合于由操作块的引擎执行的指令。在操作312处,处理器请求VMM建立包括页表的设备虚拟化,操作块可通过设备虚拟化访问工作负荷包。在操作314处,工作负荷包被提交给操作块。在操作320处,操作块将块引擎设置成安全或受保护模式,该模式可能是由VMM维护的块引擎或状态标识符的硬件模式。在该安全模式中,引擎可仅仅从由VMM指定的沙箱取回并执行指令。在操作322和324处,操作块通过从沙箱取回指令(和数据)而收集并执行工作负荷包。在操作326处,执本文档来自技高网...

【技术保护点】
一种用于块内工作负荷隔离的系统,所述系统包括:创建安全虚拟化环境(沙箱)的虚拟机管理器(VMM)模块;将数据加载到所述沙箱的第一区域中的处理器块;所述处理器块进一步生成与所述工作负荷相关联的工作负荷包,所述工作负荷包基于所述数据并存储在所述沙箱的第二区域中;以及从所述工作负荷包取回并执行指令的操作块。

【技术特征摘要】
【国外来华专利技术】2014.03.28 US 14/2289941.一种用于块内工作负荷隔离的系统,所述系统包括:创建安全虚拟化环境(沙箱)的虚拟机管理器(VMM)模块;将数据加载到所述沙箱的第一区域中的处理器块;所述处理器块进一步生成与所述工作负荷相关联的工作负荷包,所述工作负荷包基于所述数据并存储在所述沙箱的第二区域中;以及从所述工作负荷包取回并执行指令的操作块。2.根据权利要求1所述的系统,其中所述VMM将进一步设置所述沙箱的所述第二区域的访问控制,以提供与所述工作负荷相关联的代码、数据和状态信息的块内隔离。3.根据权利要求1所述的系统,其中所述VMM将进一步将所述沙箱的所述第二区域的访问控制设置成非可执行模式。4.根据权利要求3所述的系统,其中在所述工作负荷包的选择的执行时段期间,所述VMM将进一步将所述沙箱的所述第二区域的访问控制设置成针对所述操作块的可执行模式。5.根据权利要求1所述的系统,其中所述操作块将进一步向所述沙箱的第三区域写入结果,所述结果基于所述工作负荷包的执行。6.根据权利要求1所述的系统,其中所述处理器块将进一步加密地认证所述数据。7.根据权利要求1所述的系统,其中所述VMM将进一步提供与所述沙箱相关联的虚拟和物理地址之间的基于页表的变换,并且进一步提供与所述地址相关联的读取/写入/执行访问控制。8.根据权利要求1所述的系统,其中所述操作块是从由图形处理单元、设备控制器、无线通信接口、数字信号处理器和音频处理器组成的组中选择的。9.根据权利要求1所述的系统,其中所述系统是片上系统。10.根据权利要求1所述的系统,其中所述系统是智能手机、膝上型计算设备、智能TV或智能平板。11.根据权利要求1所述的系统,进一步包括用户界面,其中所述用户界面是触摸屏。12.一种用于块内工作负荷隔离的方法,所述方法包括:创建与系统的处理器块相关联的安全虚拟化环境(沙箱),所述沙箱由虚拟机管理器(VMM)管理;将数据加载到所述沙箱中;认证所述数据;生成与所述工作负荷相关联的工作负荷包,所述工作负荷包基于所述数据并且存储在所述沙箱中的存储器的非可执行区域中;以及从所述沙箱向所述系统的操作块提交所述工作负荷包以用于执行。13.根据权利要求12所述的方法,进一步包括在所述沙箱上设置访问控制,以提供与所述工作负荷相关联的代码、...

【专利技术属性】
技术研发人员:D普拉尚特U森古塔S齐哈布拉D杜尔罕X康U萨瓦高恩卡A纳伦拉特里维迪
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1