发明名称 处理器核心堆栈扩展
摘要 本发明涉及处理器核心堆栈扩展。本发明大体上是针对用于控制堆栈溢出的技术。本文描述的技术利用位于处理器核心外部的共用高速缓冲存储器或存储器的一部分作为堆栈扩展。处理器核心监视所述处理器核心内的堆栈,并在所述处理器核心堆栈超过最大条目数目时将所述堆栈的内容转移到所述处理器外部的所述堆栈扩展。当所述处理器核心确定所述处理器核心内的所述堆栈下降到最小条目数目以下时,所述处理器核心将维持在所述堆栈扩展中的所述内容的至少一部分转移到所述处理器核心内的所述堆栈中。所述技术通过利用所述处理器核心外部的堆栈扩展而防止了在所述处理器核心内执行的线程的故障和崩溃。
申请公布号 CN102841858A 申请公布日期 2012.12.26
申请号 CN201210264524.2 申请日期 2007.05.17
申请人 高通股份有限公司 发明人 焦国方;于春;杜云
分类号 G06F12/08(2006.01)I;G06F9/48(2006.01)I 主分类号 G06F12/08(2006.01)I
代理机构 北京律盟知识产权代理有限责任公司 11287 代理人 刘国伟
主权项 一种装置,其包括:处理器,其具有处理器核心,所述处理器核心包含:控制单元,其用以控制所述处理器的操作,以及第一存储器,其存储所述处理器核心内的堆栈,其中所述堆栈对应于由所述处理器核心执行的特定线程;以及第二存储器,其存储所述处理器核心外部的堆栈扩展,其中所述控制单元可操作以:在检测到所述堆栈的内容超过第一阈值大小时将所述堆栈的第一多个逻辑堆栈条目作为连续块转移到所述堆栈扩展;在所述转移期间将所述特定线程置于睡眠模式,其中当所述特定线程处于所述睡眠模式时,与所述特定线程相关联的算术逻辑单元可由其它线程使用;以及在所述转移之后,重新启动所述特定线程;其中所述堆栈扩展包括第一堆栈扩展,且其中所述控制单元可操作以当所述第一堆栈扩展的内容超过第二阈值大小时,将所述第一堆栈扩展的第二多个逻辑堆栈条目作为第二连续块转移到第二堆栈扩展;其中所述控制单元可操作以当所述第二堆栈扩展的内容下降到第三阈值大小以下时,将所述第二多个逻辑堆栈条目作为第三连续块从所述第二堆栈扩展转移到所述第一堆栈扩展。
地址 美国加利福尼亚州