保护嵌入式管理程序系统中的重要数据结构的制作方法_3

文档序号:9327246阅读:来源:国知局
硬件检验器222来确保在处理器206上运行认证的管理程序。
[0064]除了确保管理程序系统200内的管理程序104以外,可对操作系统106A-106C实施附加硬件冗余校验。这些冗余校验确保管理程序104配置的操作系统106A-106C在芯片访问资源(其与授予操作系统106A-106C的每一个的访问权限相关)上运行。图5是根据实施方式的运行操作系统的管理程序系统500的框图。
[0065]在实施方式中,管理程序系统500还包括片外部件204,诸如,非易失性存储器212、外围设备1...Ν以及易失性存储器214。如上所述,非易失性存储器212可以是任何类型的非易失性存储器(包括闪存驱动)并将在图9中详细论述。外围设备1...Ν可以是计算装置内的由操作系统106A-106C可访问或控制的部件和/或资源,并还包括重要的系统资源110和不重要的系统资源108 (未示出)。
[0066]在实施方式中,非易失性存储器212存储在计算装置上运行的操作系统106A-106C的访问权限502。例如,访问权限502可存储允许操作系统106A-106C获得对特定外围设备1-Ν、重要系统资源110和不重要的系统资源108的访问权的信息。在实施方式中,可使用各种加密方法加密访问权限502。在另一实施方式中,也可使用数字签名(诸如,签名504)标记访问权限502。也可将签名504与访问权限502 —起存储或与访问权限502分开存储。可将访问权限502存储在使用软件程序设计语言定义的数据结构中。
[0067]在实施方式中,在开机时间(boot time)或在操作系统106A-106C开始在芯片上运行之前的另一时间,将与操作系统106A-106C相关的访问权限502从非易失性存储器212上载至安全处理器210。如上所述,以与管理程序104的解密和验证类似的方式,安全处理器210使用解密模块216对加密的访问权限502进行解密,并且使用认证模块218来认证与访问权限502相关的签名504。在实施方式中,也可使用芯片内的硬件部件(诸如,片上存储器和处理器206(未示出))来执行解密和认证功能。
[0068]—旦安全处理器210解密并认证了访问权限502,则被解密和认证的访问权限502存储在管理程序104内和事务过滤器506内。在实施方式中,事务过滤器506是使用访问权限502来执行操作系统106A-106C对外围设备1_N、不重要的系统资源108和重要的系统资源110的访问的片上硬件部件。
[0069]在实施方式中,事务过滤器506使用安全处理器210来配置并存储解密的访问权限502。在一些实施方式中,为了维持访问权限502的完整性,可仅使用安全处理器210配置事务过滤器506。当管理程序104将操作系统106A-106C配置为在计算装置的片上处理器206上执行时,管理程序104使用与操作系统106A-106C的每一个相关的访问权限502以配置操作系统106A-106C的每一个对外围设备1-N、不重要的系统资源108和重要的系统资源110的访问权限。例如,管理程序104配置处理器206内的地址变换硬件508和易失性存储器214中的管理程序页表221以匹配操作系统106A-106C相应访问权限502。例如,如果访问权限502中的与操作系统106A相关的访问权限指示操作系统106A不能访问外围设备1,则管理程序104确保操作系统106A不能获得对外围设备I的访问权。在实施方式中,图5还包括操作系统寄存器510。操作系统寄存器510存储目前在处理器206上运行的操作系统106A-106C之一的操作系统标识符。例如,当管理程序104选择操作系统106A-106C之一在CPU 506上运行时,管理程序104将操作系统标识符存储在操作系统寄存器510中。
[0070]一旦在处理器206上运行操作系统106A-106C之一(诸如,操作系统106A)时,事务过滤器506使用由安全处理器210提供的访问权限512和由操作系统寄存器510提供的操作系统标识符来确定操作系统106A在处理器206上运行以及与操作系统106A相关的访问权限512。事务过滤器506然后使用操作系统寄存器510和与操作系统106A相关的访问权限512来侦听(snoop)总线。总线512向外围设备1_N和易失性存储器214传输数据和地址指令(address instruct1n)。例如,总线512可允许访问存储在易失性存储器214中的管理程序104的管理程序页表221。当事务过滤器506确定操作系统106A不具有对一个或多个外围设备1-N的访问权或者正试图生成读取或写入与和操作系统106A相关的访问权限512不兼容的资源的数据的指令时,事务过滤器506可实时阻止操作系统106A做出交易并防止发生交易。在另一实施方式中,事务过滤器506也可警告安全处理器210操作系统106A正试图进行未授权的交易并使安全处理器210针对操作系统106A采取进一步的行动。在一个实例中,安全处理器210可终止或使处理器206终止操作系统106A并防止未授权的资源访问。这样,如果管理程序104或操作系统106A受到损害,则事务过滤器506防止损害的操作系统106A对外围设备1-N和易失性存储器214的访问。
[0071]在另一实施方式中,处理器206可以是多核处理器。多核处理器具有多个独立的核,在一个或多个核上可同时运行多个操作系统(诸如,操作系统106A-106C)。这意味着每个核可与特定操作系统相关。在实施方式中,操作系统寄存器510可被实施为包括可用作查询表(未示出)的多个寄存器。查询表使多核处理器内的核与特定操作系统相关。例如,具有核标识符=I的核可与特定操作系统标识符相关,诸如,操作系统A的标识符。可替换地,代替多个寄存器,查询表也可存储在片上存储器208中。
[0072]在多核实施方式中,当交易到达事务过滤器506时,交易可与核标识符相关联。事务过滤器506随后使用查询表来将核标识符映射至与核相关的操作系统标识符。基于操作系统标识符,事务过滤器506随后可识别请求交易的操作系统。例如,与核标识符=I相关的交易可映射至操作系统A的标识符。一旦事务过滤器506确定交易与操作系统A相关,则事务过滤器506可使用访问权限502的与操作系统A相关的访问权限来确定是否准许交易对一个或多个外围设备1-N的访问。
[0073]图6是根据实施方式的运行操作系统的管理程序系统600的框图。管理程序系统600是管理程序系统500的替代实施方式。在管理程序系统600中,代替操作系统寄存器510,处理器206跟踪运行操作系统的操作系统标识符。在管理程序系统600中,事务过滤器506从处理器206接收操作系统标识符。
[0074]图7描绘了根据实施方式的初始化操作系统的认证机制的方法的流程图700。
[0075]在操作702中,接收加密的访问权限。例如,安全处理器210接收存储在非易失性存储器212 (诸如,闪存或另一片外存储器)中的加密访问权限502。如讨论的,访问权限502存储允许操作系统106A-106C获得对外围设备1_N、重要系统资源110和不重要系统资源108的访问权限的信息。
[0076]在操作704中,安全地解密访问权限。例如,安全处理器210使用解密模块216和/或认证模块218 (取决于加密的类型)来解密安全处理器的安全边界内的访问权限502。如果安全处理器210不能解密访问权限512,则流程结束(未示出)。
[0077]在操作706中,存储访问权限。例如,安全处理器210将解密的访问权限512存储在管理程序104和事务过滤器506内。
[0078]在操作708中,运行操作系统的处理器被配置为根据访问权限运行操作系统。例如,对于操作系统106A-106C的每一个,管理程序104配置处理器206内的地址变换硬件(address translat1n hardware) 508和管理程序页表221以匹配操作系统106A-106C的每一个的访问权限512。这样,当处理器206运行操作系统106A-106C之一时,处理器206根据相应的访问权限512运行操作系统106A-106C之一。例如,如果访问权限502中的与操作系统106A相关的访问权限指示操作系统106A不能访问外围设备1,则管理程序104确保操作系统106A不能获得对外围设备I的访问权。
[0079]在操作710中,操作系统在管理程序系统内执行。根据实施方式,在流程图800中包括操作710的细节,其中,当由处理器206运行时认证示例性操作系统106A。<
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1