实现延时压栈的装置及处理器制造方法及图纸

技术编号:15501572 阅读:111 留言:0更新日期:2017-06-03 22:52
本发明专利技术提供一种实现延时压栈的装置及处理器。所述装置包括:非可信内核、可信内核及公用资源,所述可信内核包括公用资源访问记录单元和公用资源压栈记录单元;所述实现延时压栈的装置用于当可信内核访问公用资源时,所述公用资源访问记录单元执行记录操作,可信内核响应非可信中断切换到非可信内核之后,当非可信内核访问公用资源或者执行内核切换指令切换到可信内核时,判断可信内核是否访问过公用资源,如果可信内核访问过公用资源,切换到可信内核,执行公用资源的压栈和清零操作,所述公用资源压栈记录单元执行记录操作。本发明专利技术能够避免不必要的公用资源压栈和清零操作,提高可信内核响应非可信中断的实时性。

Device and processor for realizing time delay pressing stack

The invention provides a device and a processor for realizing a time delay stack. The device comprises a non trusted kernel, trusted kernel and public resources, including access to the recording unit and the public resources stack recording unit public resources the trusted kernel; the device delay stack is used when the trusted kernel access to public resources, the public resource access recording unit performs a recording operation, after the trusted kernel in response to non trusted interrupt switch to non trusted kernel, when non trusted kernel access to public resources or executing kernel switching command switch to the trusted kernel, determine whether access to a trusted kernel of public resources, if the letter kernel visited public resources, switch to the trusted kernel, executing public resources stack and clear operation, the public resource stack recording unit performs a recording operation. The invention can avoid unnecessary public resource stack and clear operation, and improve the real-time response of the trusted kernel in response to the untrusted interruption.

【技术实现步骤摘要】
实现延时压栈的装置及处理器
本专利技术涉及微处理器
,尤其涉及一种实现延时压栈的装置及处理器。
技术介绍
系统内核的安全运行已成为系统安全技术的热点问题,为了对系统提供软件保护之外的底层硬件保护机制,处理器划分为可信内核和非可信内核,使可信应用运行在可信内核中,非可信应用运行在非可信应用中,从而实现可信内核与非可信内核的资源隔离。为了节省资源,非可信内核和可信内核共用一份公用资源,当可信内核响应非可信中断时,通常需要将公用资源进行压栈和清零操作,防止非可信内核获取公用资源中可信内核的信息。在实现本专利技术的过程中,专利技术人发现现有技术中至少存在如下技术问题:如果可信内核没有访问过公用资源,或者可信内核响应非可信中断后,非可信内核没有使用公用资源,则非可信内核就不会从公用资源中读取可信内核的信息,此时压栈和清零操作反而降低了中断响应的实时性。
技术实现思路
本专利技术提供的实现延时压栈的装置及处理器,能够避免不必要的公用资源压栈和清零操作,提高可信内核响应非可信中断的实时性。第一方面,本专利技术提供一种实现延时压栈的装置,所述装置包括:非可信内核,用于执行非可信应用;可信内核,包括公用资源访问记录单元和公用资源压栈记录单元,用于执行可信应用,其资源不能被非可信内核访问;所述公用资源访问记录单元用于记录可信内核是否访问过公用资源;所述公用资源压栈记录单元用于记录非可信内核是否触发过公用资源的压栈操作;公用资源,能够被所述可信内核和所述非可信内核访问;所述实现延时压栈的装置用于当可信内核访问公用资源时,所述公用资源访问记录单元执行记录操作,可信内核响应非可信中断切换到非可信内核之后,当非可信内核访问公用资源或者执行内核切换指令切换到可信内核时,判断可信内核是否访问过公用资源,如果可信内核访问过公用资源,切换到可信内核,执行公用资源的压栈和清零操作,所述公用资源压栈记录单元执行记录操作。可选地,当非可信内核访问公用资源或者执行内核切换指令切换到可信内核时,所述非可信内核根据所述公用资源访问记录单元是否存在访问记录判断可信内核是否访问过公用资源,当所述公用资源访问记录单元存在访问记录时,所述可信内核访问过公用资源。可选地,当所述公用资源访问记录单元存在访问记录并且所述可信内核无需再访问公用资源时,所述可信内核通过执行指令清除所述公用资源访问记录单元中的访问记录。可选地,当所述可信内核通过执行内核切换指令切换到非可信内核时,所述可信内核通过硬件清除所述公用资源访问记录单元的访问记录。可选地,当可信内核响应非可信中断时,在切换到非可信内核执行中断服务程序指令前,所述可信内核通过硬件清除所述公用资源压栈记录单元中的压栈记录。可选地,完成公用资源压栈和清零操作后,所述可信内核通过硬件清除所述公用资源访问记录单元中的访问记录。可选地,所述可信内核通过硬件清除公用资源访问记录单元中的访问记录后,切换到所述非可信内核,所述非可信内核重新执行中断服务程序指令。可选地,所述非可信内核完成非可信内核的中断服务程序后,返回所述可信内核,如果所述公用资源压栈记录单元存在压栈记录,所述可信内核执行公用资源弹栈操作。可选地,所述公用资源压栈、弹栈操作在所述可信内核中执行,使用可信内核的堆栈进行操作。第二方面,本专利技术提供一种处理器,所述处理器包括上述实现延时压栈的装置。本专利技术实施例提供的实现延时压栈的装置及处理器,当可信内核访问公用资源时,公用资源访问记录单元执行记录操作,可信内核响应非可信中断切换到非可信内核之后,当非可信内核访问公用资源或者执行内核切换指令切换到可信内核时,判断可信内核是否访问过公用资源,如果可信内核访问过公用资源,切换到可信内核,执行公用资源的压栈和清零操作,所述公用资源压栈记录单元执行记录操作。与现有技术相比,本专利技术能够避免不必要的公用资源压栈和清零操作,提高可信内核响应非可信中断的实时性。附图说明图1为本专利技术一实施例实现延时压栈的装置的流程图;图2为本专利技术一实施例公用资源访问记录单元的结构示意图;图3为本专利技术一实施例公用资源压栈记录单元的结构示意图;图4为本专利技术一实施例可信内核的程序状态寄存器的结构示意图;图5为本专利技术一实施例可信内核响应非可信中断的流程图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提供一种实现延时压栈的装置,如图1所示,所述装置包括:非可信内核20,用于执行非可信应用;可信内核30,包括公用资源访问记录单元32和公用资源压栈记录单元34,用于执行可信应用,其资源不能被非可信内核20访问;所述公用资源访问记录单元32用于记录可信内核是否访问过公用资源;所述公用资源压栈记录单元34用于记录非可信内核20是否触发过公用资源的压栈操作;公用资源40,能够被所述可信内核30和所述非可信内核20访问;所述实现延时压栈的装置用于当可信内核30访问公用资源40时,所述公用资源访问记录单元32执行记录操作,可信内核30响应非可信中断切换到非可信内核20之后,当非可信内核20访问公用资源40或者执行内核切换指令切换到可信内核30时,判断可信内核30是否访问过公用资源40,如果可信内核30访问过公用资源40,切换到可信内核30,执行公用资源40的压栈和清零操作,所述公用资源压栈记录单元34执行记录操作。可选地,当非可信内核20访问公用资源40或者执行内核切换指令切换到可信内核30时,所述非可信内核20根据所述公用资源访问记录单元32是否存在访问记录判断可信内核30是否访问过公用资源40,当所述公用资源访问记录单元32存在访问记录时,所述可信内核30访问过公用资源40。可选地,如图2所示,所述公用资源访问记录单元32包括:公用资源访问记录位322、访问置位逻辑324及访问清零逻辑326,其中,所述访问置位逻辑324,用于当可信内核30中的指令访问公用资源40时,对所述公用资源访问记录位322进行置位操作;所述访问清零逻辑326,用于当所述可信内核30完成公用资源压栈和清零操作后,或者所述可信内核30执行内核切换指令切换到非可信内核20时,对所述公用资源访问记录位322进行清零操作。可选地,所述公用资源访问记录位322的置位操作用等式表示为:访问置位=访问公用资源指令&&指令退休&&可信内核&&(!公用资源访问记录位)。可选地,所述公用资源访问记录位322的清零操作用等式表示为:访问清零=公用资源压栈完成||可信内核执行内核切换指令。可选地,初始态时,所述公用资源访问记录单元32不存在访问记录。可选地,当所述公用资源访问记录单元32存在访问记录并且所述可信内核30无需再访问公用资源40时,所述可信内核30通过执行指令清除所述公用资源访问记录单元32中的访问记录。可选地,当所述可信内核30通过执行内核切换指令切换到非可信内核20时,所述可信内核30通过硬件清除所述公用资源访问记录单元的访问记录。可选地本文档来自技高网...
实现延时压栈的装置及处理器

【技术保护点】
一种实现延时压栈的装置,其特征在于,所述装置包括:非可信内核,用于执行非可信应用;可信内核,包括公用资源访问记录单元和公用资源压栈记录单元,用于执行可信应用,其资源不能被非可信内核访问;所述公用资源访问记录单元用于记录可信内核是否访问过公用资源;所述公用资源压栈记录单元用于记录非可信内核是否触发过公用资源的压栈操作;公用资源,能够被所述可信内核和所述非可信内核访问;所述实现延时压栈的装置用于当可信内核访问公用资源时,所述公用资源访问记录单元执行记录操作,可信内核响应非可信中断切换到非可信内核之后,当非可信内核访问公用资源或者执行内核切换指令切换到可信内核时,判断可信内核是否访问过公用资源,如果可信内核访问过公用资源,切换到可信内核,执行公用资源的压栈和清零操作,所述公用资源压栈记录单元执行记录操作。

【技术特征摘要】
1.一种实现延时压栈的装置,其特征在于,所述装置包括:非可信内核,用于执行非可信应用;可信内核,包括公用资源访问记录单元和公用资源压栈记录单元,用于执行可信应用,其资源不能被非可信内核访问;所述公用资源访问记录单元用于记录可信内核是否访问过公用资源;所述公用资源压栈记录单元用于记录非可信内核是否触发过公用资源的压栈操作;公用资源,能够被所述可信内核和所述非可信内核访问;所述实现延时压栈的装置用于当可信内核访问公用资源时,所述公用资源访问记录单元执行记录操作,可信内核响应非可信中断切换到非可信内核之后,当非可信内核访问公用资源或者执行内核切换指令切换到可信内核时,判断可信内核是否访问过公用资源,如果可信内核访问过公用资源,切换到可信内核,执行公用资源的压栈和清零操作,所述公用资源压栈记录单元执行记录操作。2.根据权利要求1所述的装置,其特征在于,当非可信内核访问公用资源或者执行内核切换指令切换到可信内核时,所述非可信内核根据所述公用资源访问记录单元是否存在访问记录判断可信内核是否访问过公用资源,当所述公用资源访问记录单元存在访问记录时,所述可信内核访问过公用资源。3.根据权利要求1所述的装置,其特征在于,当所述公用资源访问记录单元存在访问记录并且所述可信内核无需再访问公用资源时...

【专利技术属性】
技术研发人员:郭宇波
申请(专利权)人:杭州中天微系统有限公司
类型:发明
国别省市:浙江,33

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

1