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

用于限制安全执行环境的硬件失败信息泄漏的系统和方法技术方案

技术编号:2854120 阅读:231 留言:0更新日期:2012-04-11 18:40
描述了用于限制硬件失败信息泄露的方法和装置。在一个实施例中,处理器的错误报告系统可以将多种状态和错误地址数据记录到寄存器中,寄存器通过热复位事件保持它们的内容。但是处理器的错误报告系统接着可以确定处理器是否在以可信任的或安全的模式中运行。如果没有,则处理器的结构状态变量也可以被记录到寄存器中。但是如果处理器在以可信任的或安全的模式中运行,则结构状态变量的记录可以被禁止,或标记为无效。

【技术实现步骤摘要】

本专利技术一般涉及微处理器系统,并更为具体地涉及可以在可信任或安全环境中操作的微处理器系统。
技术介绍
在本地或远程微处理器上执行的越来越多的金融和个人事务已经促进了“可信任的”或“安全的”微处理器环境的建立。这些环境设法解决的问题是隐私或正被破坏或滥用数据的泄露。用户不希望他们的私人数据公之于众。他们也不希望他们的数据在不适当的事务中被修改或使用。这样的例子包括病例卡的无意公开或从在线银行或其他存放处的资金的电子盗窃。同样,内容提供者寻求对数字内容(例如,音乐,其他音频,视频,或其他类型的数据)的保护而防止在无授权情况下被拷贝。可以不时地运行于可信任或非可信任模式中,或同时运行在这两个模式中的系统可以利用某些错误报告措施解决安全问题。例如,在奔腾可兼容结构中提供一种硬件错误报告系统,称为机器检测结构(MCA)。MCA可以提供一种机制用于检测和报告硬件错误,例如系统总线错误,纠错码(ECC)错误,奇偶错误,高速缓存错误,以及翻译后援缓冲器(TLB)错误。MCA可以包括多个支持MCA的寄存器,所述寄存器可以用于记录与可被检测到的错误有关的信息。MCA寄存器如果在可信任模式的操作过程中发生硬件失败,则它们会具有写入其中的安全感应信息。为了更好的支持诊断软件的并发执行,这些MCA寄存器的内容可以通过处理器重启事件而保存下来。在一些处理器实例中具有内部调试标记,该标记可以影响对另一个硬件测试和调试钩(debug hook)的访问。例如,如果内部调试标记被设定,则访问可以被授权为内部处理器节点状态,所述状态在正常的处理器运行过程中无效。该标记可以在制造和最终测试过程中设置,而在准备向终端用户传送过程中被清除。在其他实例中,可以实施内部调试标记的其他控制方法。附图说明参考附图以示例的方式而不是以限制的方式举例说明了本专利技术,附图中相同的附图标记表示相同的元件,其中图1是根据本专利技术一个实施例的示例可信任或安全软件环境的示意图。图2是根据本专利技术一个实施例的机器检测结构定序器和寄存器的示意图。图3A是根据本专利技术一个实施例的机器检测结构状态寄存器的示意图。图3B是根据本专利技术一个实施例的机器检测结构地址寄存器的示意图。图4是根据本专利技术一个实施例的一组机器检测结构状态寄存器的示意图。图5是根据本专利技术一个实施例的定序器操作的流程图。图6A是根据本专利技术实施例的包括具有机器检测结构定序器的处理器的系统的示意图。图6B是根据本专利技术另一实施例的包括具有机器检测结构定序器的处理器的系统的示意图。具体实施例方式以下说明描述了这样的技术用于在处理器系统的安全或可信任模式操作过程中,限制由错误报告系统收集的硬件失败信息的泄露。在以下说明中,列出了诸如逻辑设备,软件模块配置,总线和其他接口信号传输技术之类的多个具体细节以及操作细节,以提供对本专利技术更为透彻的理解。然而,本专利技术所属领域的技术人员应当理解,本专利技术可以在没有这些具体细节的情况下实现。在其他情况下,控制结构,门级电路和全软件指令序列没有被详细示出以免模糊本专利技术。根据所包括的说明,本领域的普通技术人员能够在不进行过度实验的情况下实现相应的功能。在某些实施例中,本专利技术以在诸如因特尔公司制造的奔腾可兼容处理器中实现的机器检测结构(MCA)的形式公开。然而,本专利技术也可以在其他类型的处理器的其他类型错误报告系统中实现,所述处理器例如Itanium处理器系列可兼容处理器,X-Scale系列可兼容处理器,或来自其他供应商或设计者的任何处理器结构的多个种类的不同通用处理器中的任何一种。另外,一些实施例可以包括或者可以是专用处理器,诸如图形,网络,图像,通信,或任何其他已知或可用类型的处理器。现参照图1,根据本专利技术一个实施例示出了示例可信任或安全软件环境的示意图。在图1实施例中,可信任和非可信任软件可以被同时加载并可以在一个计算机系统(如硬件180所示)中同时执行。硬件180可以包括一个或多个处理器,将处理器连接于存储器或输入/输出设备的逻辑(有时称为“芯片集”),以及诸如可信任平台模块之类的专用安全设备。安全虚拟机监控器(SVMM)150可以选择性地允许或阻止一个或多个非可信任操作系统140和非可信任应用程序110通过130直接访问硬件180。在这种情况下,“非可信任的”不必表示操作系统或应用程序故意发生误差,而是相互作用代码(interacting code)的大小和种类使得可靠地断言软件如所期望地运行、并且没有病毒或其他外部代码妨碍该软件的执行是不实际的。在典型实施例中,非可信任代码可以包括在如今个人计算机上建立的普通操作系统和应用程序。SVMM 150也选择性地允许或阻止一个或多个可信任或安全内核160和一个或多个可信任应用程序170直接访问硬件180。可以限制这种可信任或安全内核160和可信任应用程序170的大小和功能以增强对其执行信任分析的能力。可信任应用程序170可以是可在安全环境中执行的任何软件代码,程序,例行程序,或例行程序集。因此,可信任应用程序170可以是各种应用程序,或代码序列,或者可以是诸如Java小程序之类的相对较小的应用程序。通常由操作系统140或内核160执行的、能够改变系统资源保护或特权的指令或操作可以由SVMM 150捕获,并选择性地允许,部分性地允许,或拒绝。作为例子,在典型实施例中,通常由操作系统140或内核160执行的、改变处理器页表的指令被SVMM 150替代地捕获,这将确保请求没有试图将页特权改变到其虚拟机区域之外。硬件180内的一个处理器或多个处理器可以包含某些专用电路或逻辑元件以初始化和支持安全或可信任操作。例如,处理器可以支持初始化可信任操作的专用安全模式开始(SENTER)指令的执行。当被执行时,SENTER指令可以以可信任的方式加载并初始化SVMM 150,从而在先前非可信任系统中初始化可信任操作。SENTER指令的初始处理器的执行可以通过将执行控制转移到系统初始代码的可信任拷贝而终止,然后可以执行其系统测试和配置操作并可以寄存SVMM 150的存储驻留拷贝。一旦可信任系统初始化代码已经完成其执行,则系统初始化代码可以最终将初始化处理器的执行控制转移到SVMM 150。这时,在硬件180的处理器中安全模式标记可以被设置为真。在一个实施例中,安全模式标记可以由处理器微码控制,并且在结构上是不可见的。从向前的这个角度来看,整个系统可以如上所述以可信任模式运行。为了在SVMM 150的控制之下离开可信任模式,并从而返回至非可信任操作,可以执行安全退出(SEXIT)指令。SEXIT指令可以支持终止可信任操作,尤其是SVMM 150的操作。这时,可以在硬件180的处理器中将安全模式标记设置为假。现参照图2,根据本专利技术一个实施例示出了机器检测结构(MCA)定序器和MCA寄存器的示意图。MCA定序器210和MCA寄存器的复制拷贝可以位于硬件280内的一个或多个处理器之内。在一个实施例中,MCA定序器210可以控制将硬件错误产生的数据加载到MCA寄存器中。MCA定序器210可以在一些条件下将错误状态数据加载到MCA状态寄存器214组中,将错误地址和其他可选的混杂数据加载到MCA地址和混杂寄存器216组中,并将机器状态数据组加载到MCA机器状本文档来自技高网...

【技术保护点】
一种装置,包括:指示处理器在可信任模式中运行的安全模式标记;以及当所述安全模式标记为真时将机器状态寄存器标记为无效的定序器。

【技术特征摘要】
US 2004-9-30 10/9563221.一种装置,包括指示处理器在可信任模式中运行的安全模式标记;以及当所述安全模式标记为真时将机器状态寄存器标记为无效的定序器。2.根据权利要求1所述的装置,其中所述定序器通过为所述机器状态寄存器设置有效位来将所述机器状态寄存器标记为无效。3.根据权利要求1所述的装置,其中所述定序器通过将所述机器状态寄存器的部分混杂状态寄存器设置为无效数字来将所述机器状态寄存器标记为无效。4.根据权利要求1所述的装置,其中当所述安全模式标记为假时所述定序器将机器状态数据加载到所述机器状态寄存器中。5.根据权利要求4所述的装置,其中即使所述安全模式标记为真,当所述安全模式标记仍是真时,所述定序器确保所述机器状态寄存器没有被标记为无效。6.根据权利要求1所述的装置,还包括内部调试标记,其中当所述内部调试标记为假并且所述安全模式标记为真时,所述定序器将机器状态寄存器标记为无效。7.根据权利要求6所述的装置,其中当所述内部调试标记为真而忽视所述安全模式标记,所述定序器将机器状态数据加载到所述机器状态寄存器中。8.根据权利要求1所述的装置,其中忽视所述安全模式标记的值,所述定序器将机器错误状态数据加载到机器错误状态寄存器中。9.根据权利要求1所述的装置,其中所述安全模式标记是通过执行安全模式进入指令而设置的。10.一种方法,包括接收机器错误数据;确定安全模式标记的第一值;以及如果所述第一值是真则将机器状态寄存器标记为无效。11.根据权利要求10所述的方法,其中所述作标记步骤包括为所述机器状态寄存器设置有效位。12.根据权利要求10所述的方法,其中所述作标记步骤包括将所述机器状态寄存器的部分混杂状态寄存器设置为无效数字。13.根据权利要求10所述的方法,还包括当所述第一值为假时将机器状态数据加载到所述机器状态寄存器中。14.根据权利要求13所述的方法,还包括当所述第一值为假时确保所述机器状态寄存器没有被标记为无效。15.根据权利要求10所述的方法,其中所述作标记步骤包括当内部调试标记的第二值是假并且所述安全模式标记的所述第一值为真时,将所述机器状态寄存器标记为无效。16.根据权利要求15所述的方法,还包括即使所述安全模式标记的所述第一值为真,当所述第二值仍是真时将机器状态数据加载到所述机器状态寄存器中。17.根据权利要求10所述的方法,还包括忽视所述第一值,将机器错误状态数据加载到机器错误状...

【专利技术属性】
技术研发人员:S菲彻尔S达塔
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

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

1