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

用于执行安全嵌入式容器的处理器扩展制造技术

技术编号:15750957 阅读:77 留言:0更新日期:2017-07-04 15:06
描述了涉及用于执行安全嵌入式容器的处理器扩展的方法和装置。在一实施例中,提供了用于管理功能的可扩展方案,例如用于UMPC环境,或者其中使用专用处理器或微控制器来实现可管理性是不适合或不切实际的环境。例如,在一实施例中,独立于OS(操作系统)或VMM(虚拟机管理器)的(本文通常称为“OI”)架构涉及在处理器上创建一个或多个容器,这是通过在主机OS/VMM与OI容器之间动态地划分资源(例如,处理器周期、存储器、设备)来实现的。还描述并要求保护了其它实施例。

【技术实现步骤摘要】
用于执行安全嵌入式容器的处理器扩展
本公开总体上涉及电子领域。更具体地,本专利技术的实施例涉及用于执行安全嵌入式容器的处理器扩展。
技术介绍
计算机系统可以被实现为分层的设备,例如包括硬件层、固件和操作系统层以及应用程序层。计算机系统的硬件层可以被称为物理平台。物理平台可以包括处理器、芯片组、通信信道、存储器、主板和系统。计算机系统还可以包括管理引擎(manageabilityengine),例如包括微控制器,其专门用于允许例如通过通信网络经由远程管理控制台来远程地管理该计算机系统。然而,由于包括成本、大小、功耗、散热、有限的MIPS(每秒百万指令)等在内的原因,在一些实现中针对管理服务来提供专用的微控制器可能是不适当的、不切实际的或者没有可扩展性。附图说明参考附图提供了详细的描述。在附图中,附图标记最左边的数字标识出该附图标记第一次出现的那幅图。在不同的附图中使用相同的附图标记来指示类似或相同的项。图1、18和19说明了计算系统的实施例的框图,所述计算系统可以被用于实现本文讨论的各种实施例。图2是根据一实施例的状态转变图,其说明了四个状态和用于使得能够从一个状态转变为另一个状态的触发条件。图3说明了根据一实施例的与不同存储器分区的执行相关联的各种操作的框图。图4-8说明了根据一些实施例的时间图。图9和11说明了根据本专利技术的一些实施例的流程图。图10说明了根据一实施例的用于处理从分配给OI的设备发起的中断、并将其注入到OI分区的各种部件的框图。图12说明了根据一实施例的与OIPIC模块进行通信的各种部件。图13和14说明了根据一些实施例的与使用加载密钥相关联的操作的框图。图15和16说明了根据一些实施例的与使用存储密钥相关联的操作的框图。图17说明了根据一实施例的与在S0与S3之间的安全转变相关联的操作的框图。具体实施方式在以下的描述中,阐述了许多具体细节以便提供对各种实施例的透彻理解。但是,可以在没有这些具体细节的情况下实施本专利技术的各种实施例。在其它实例中,没有详细地描述已知的方法、过程、部件和电路,以便不模糊本专利技术的特定的实施例。此外,可以使用各种手段,例如半导体集成电路(“硬件”)、组成一个或多个程序的计算机可读指令(“软件”)或硬件和软件的某种组合,来执行本专利技术的实施例的各个方面。为了该公开的目的,提及“逻辑”应当是指硬件、软件或其某种组合。此外,本文使用的“指令”或“微操作”(其还可以被称为“uop”)可以是可互换的。此外,尽管本文讨论的一些实施例可以将置位或清零值分别称为逻辑0和1,但是这些术语是可互换的,例如,取决于实现。一些处理器可以包括多个处理核心。除了多个核心之外,处理器管芯还可以包括非核心(其可以统指在处理器管芯上除了核心之外的所有组件)。为了提高性能,例如通过替代多个芯片组,可以将更多的功能并入处理器的非核心中。例如,一些实现可以将存储器控制器功能、IO(输入输出)控制器功能和图形功能建立在非核心上。但是,该趋势对平台上提供的其它功能或服务(例如,可管理性)会有影响。当前,可以将一些管理功能移交到专用处理器,其可以构成管理引擎(ME)的核心部分。ME通常位于芯片组上。此外,一些服务器平台可以实现分立专用微控制器,称为基板管理控制器(BMC)、服务处理器(SP)或叫做任何其它名字。如先前所讨论的,由于以下原因,例如成本、大小、功耗、散热、有限的MIPS等,这些方案没有可扩展性。这在超级移动个人计算机(UMPC)环境中愈发成为问题,因此促使出现了对于不同的解决方案的需求。为此目的,本文公开的一些实施例提供了针对管理功能的可扩展方案,例如,用于UMPC环境,或者用于其中使用专用的处理器或微控制器来实现可管理性是不适当的或不切合实际的情况。例如,在一实施例中,独立于OS(操作系统)或VMM(虚拟机管理器)的架构(本文中统称为“OI”)涉及通过在主机(host)OS/VMM与OI容器之间动态地划分资源(例如,处理器周期、存储器、设备),来创建一个或多个容器,例如在处理器上。在一个实施例中,OI资源管理器(OIRM)可以执行在主机OS/VMM容器(本文中也称为分区)与独立于OS的容器之间的分时(timesharing)操作。因此,一些实施例可以允许在不影响OS/VMM执行性能(或减少对其的影响)的情况下,将空闲的处理器周期用于有用的目的(例如,可管理性)。在一实施例中,公开了用于处理从分配给OI的设备发起的中断、并将这些中断注入到OI分区的技术。在一个实施例中,提供了防篡改(tamperresistant)存储器,以处理OI中的安全敏感数据。在一实施例中,从S3到S0以及从S0到S3的转变所花费的时间量减少了。此外,本文描述的技术可以允许提高各种计算设备中的性能、效率和/或安全,例如参照图1-19所讨论的那些。更具体地说,图1说明了根据本专利技术的一实施例的计算系统100的框图。系统100可以包括一个或多个处理器102-1至102-N(本文中通常称为“多个处理器102”或“处理器102”)。处理器102之间可以经由互连网络或总线104进行通信。每个处理器可以包括各种部件,为了清楚起见,参照处理器102-1仅讨论了其中的一些部件。因此,剩余的处理器102-2至102-N中的每一个可以都包括参照处理器102-1所讨论的相同或相似的部件。在一实施例中,处理器102-1可以包括一个或多个处理器核心106-1至106-M(本文中称为“多个核心106”或更一般地称为“核心106”)、共享高速缓存108和/或路由器110。处理器核心106可以被实现在单个集成电路(IC)芯片上。此外,该芯片可以包括一个或多个共享的和/或私有的高速缓存(例如,高速缓存108)、总线或互连(例如,总线或互连网络112)、存储器控制器(例如,参照图18-19所讨论的那些)或其它部件。在一个实施例中,路由器110可以用于在处理器102-1和/或系统100的各种部件之间进行通信。此外,处理器102-1可以包括多于一个路由器110。此外,多个路由器110可以进行通信以使得能够在处理器102-1内部或外部的各种部件之间进行数据路由。在一个实施例中,处理器102-1可以具有嵌入式密钥113,其仅可由OIRM124来访问,以用在加解密操作中。在一个实施例中,可以在处理器第一次上电时,由OIRM使用强随机数生成器来生成该密钥并将其存储在该处理器上。在另一个实施例中,可以在制造时将该密钥存储到处理器中。共享高速缓存108可以存储由处理器102-1的一个或多个部件(例如,核心106)使用的数据(例如,包括指令)。如图所示,处理器102还可以包括位于处理器上的(本文中也称为“封装内”)存储器111(其可以用作安全存储器,下文将进一步讨论)。例如,共享高速缓存108可以在本地对存储器114中存储的数据进行缓存,以便于由处理器102的部件来更快地访问。在一实施例中,高速缓存108可以包括中间级高速缓存(例如,二级(L2)、三级(L3)、四级(L4)或其它级高速缓存)、最末级高速缓存(LLC)和/或其组合。此外,处理器102-1的各种部件可以通过总线(例如,总线112)和/或存储器控制器或中枢(hub)来与共享高速缓存108直接地通信。如图1本文档来自技高网...
用于执行安全嵌入式容器的处理器扩展

【技术保护点】
一种用于动态地对资源进行安全划分的装置,包括:存储单元,其具有多个分区,其中,所述多个分区中的第一分区用于存储独立于操作系统(OS)的分区,该独立于OS的分区具有独立于操作系统和虚拟机管理器、并且不受操作系统和虚拟机管理器影响的执行环境,并且所述多个分区中的第二分区用于存储OS;以及固件实现的独立于操作系统/虚拟机管理器的资源管理器,其将所述多个分区耦合到处理器,其中,所述资源管理器用于在所述第一分区与所述第二分区之间动态地划分所述处理器的周期,并且其中,运行在所述处理器上的、来自所述第二分区的应用程序能够从所述资源管理器获得密钥二进制大对象以访问所述第一分区中的数据,所述密钥二进制大对象包含应用程序生成的、由所述资源管理器使用仅能由所述资源管理器访问的嵌入式密钥加密的密钥。

【技术特征摘要】
2008.12.31 US 12/347,8901.一种用于动态地对资源进行安全划分的装置,包括:存储单元,其具有多个分区,其中,所述多个分区中的第一分区用于存储独立于操作系统(OS)的分区,该独立于OS的分区具有独立于操作系统和虚拟机管理器、并且不受操作系统和虚拟机管理器影响的执行环境,并且所述多个分区中的第二分区用于存储OS;以及固件实现的独立于操作系统/虚拟机管理器的资源管理器,其将所述多个分区耦合到处理器,其中,所述资源管理器用于在所述第一分区与所述第二分区之间动态地划分所述处理器的周期,并且其中,运行在所述处理器上的、来自所述第二分区的应用程序能够从所述资源管理器获得密钥二进制大对象以访问所述第一分区中的数据,所述密钥二进制大对象包含应用程序生成的、由所述资源管理器使用仅能由所述资源管理器访问的嵌入式密钥加密的密钥。2.根据权利要求1所述的装置,其中,所述存储单元将独立于操作系统/虚拟机管理器的驱动程序存储在所述第二分区中,其中,所述驱动程序用于向所述资源管理器指示存储在所述第一分区中的一个或多个指令是否要被调度执行。3.根据权利要求1所述的装置,其中,所述资源管理器基于确定出所述资源管理器未能调度存储在所述第一分区中的一个或多个指令在选择时间段内执行,为所述一个或多个指令分配最短保证执行持续时间。4.根据权利要求1所述的装置,其中,所述资源管理器向所述第一分区分配所述处理器的空闲周期。5.根据权利要求1所述的装置,其中,所述处理器包括一个或多个处理器核心,并且所述资源管理器用于确定是分配所述一个或多个处理器核心中一个处于C0状态的处理器核心的周期,还是唤醒所述一个或多个处理器核心中另一个处于C-X状态的处理器核心。6.根据权利要求1所述的装置,其中,所述第一分区包括设备过滤器,用于指示是根据存储在所述第一分区中的第一中断重映射表还是根据存储在所述第二分区中的第二中断重映射表来处理中断。7.根据权利要求6所述的装置,还包括中断重映射单元,用于接收所述中断并且引起所述设备过滤器的查找。8.根据权利要求1所述的装置,其中,所述资源管理器基于范围寄存器的一个或多个比特来阻止来自所述第二分区的对所述第一分区的访问。9.根据权利要求1所述的装置,其中,所述资源管理器基于存储在所述第一分区中的扩展页表中存储的数据来阻止来自所述第一分区的对所述第二分区的访问。10.根据权利要求1所述的装置,其中,所述处理器包括存储器,用于存储未加密的信息,其中,所述未加密的信息对所述处理器的外部是不可用的。11.根据权利要求1所述的装置,还包括完整性校验值阵列,用于存储对应于所述第一分区中的一个或多个页的数据,其中,所述阵列中的每个条目用于指示所述第一分区中的对应的页的安全散列算法值、有效性和直接存储器访问。12.根据权利要求11所述的装置,其中,所述资源管理器基于存储在所述完整性校验值阵列的对应的条目中的值,确定所述第一分区中的所述一个或多个页的完整性。13.根据权利要求11所述的装置,其中,响应于检测到对所述第一分区中的对应的页的修改,所述资源管理器引起对存储在所述完整性校验值阵列中的值的更新。14.一种用于动态地对资源进行安全划分的方法,包括:将多个分区存储在存储器中,其中,所述多个分区中的第一分区用于存储独立于操作系统(OS)的分区,该独立于OS的分区具有独立于操作系统和虚拟机管理器、并且不受操作系统和虚拟机管理器影响的执行环境,并且所述多个分区中的第二分区用于存储OS;经由独立于操作系统/虚拟机管理器的资源管理器,将所述多个分区耦合到处理器;以及所述资源管理器在所述第一分区与所述第二分区之间分配所述处理器的周期,其中,运行在所述处理器上的、来自所述第二分区的应用程序能够从所述资源管理器获得密钥二进制大对象以访问所述第一分区中的数据,所述密钥二进制大对象包含应用程序生成的、由所述资源管理器使用仅能由所述资源管理器访问的嵌入式密钥加密的密钥。15.根据权利要求14所述的方法,还包括:将独立于操作系统/虚拟机管理器的驱动程序存储在所述第二分区中,其中,所述驱动程序用于向所述资源管理器指示存储在所述第一分区中的一个或多个指令是否要被调度执行。16.根据权利要求14所述的方法,还包括:所述资源管理器基于确定出所述资源管理器未能调度存储在所述第一分区中的一个或多个指令在选择时间段内执行,为所述一个或多个指令分配最短保证执行持续时间。17.根据权利要求14所述的方法,还包括:所述资源管理器向所述第一分区分配所述处理器的空闲周期。18.根...

【专利技术属性】
技术研发人员:V·尚博格A·库马尔P·戈埃尔
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1