-
题名一种基于持久化栈的返回地址预测器
- 1
-
-
作者
谭弘泽
王剑
-
机构
处理器芯片全国重点实验室(中国科学院计算技术研究所)
中国科学院大学
-
出处
《计算机研究与发展》
EI
CSCD
北大核心
2023年第6期1337-1345,共9页
-
基金
中国科学院战略性先导科技专项(C类)(XDC05020100)。
-
文摘
分支预测允许处理器并行执行分支之后的指令,由于其高准确率具有性能和功耗方面的双重好处,是一项重要的处理器优化技术.根据分而治之的策略,返回地址栈(return-address stack,RAS)将过程返回类分支单独分出并予以预测.其中,RAS利用过程调用和返回的后入先出规则,可通过猜测执行中调用栈的模拟准确预测返回地址.但是,由于实际处理器猜测执行带来的错误路径污染,该结构需要通过恢复机制来保障所存储数据的准确性.尤其在对面积资源敏感的嵌入式领域,设计者需要在准确率和恢复机制的开销间进行细致的权衡.针对RAS存储中的冗余,通过溢出检测结合传统栈、持久化栈和后备预测3种预测方式,提出一种基于持久化栈的返回地址预测器——混合返回地址栈(hybrid return-address stack,HRAS),避免错误路径污染和对返回地址的冗余存储,从而有效降低返回误预测率.与此同时,设计解耦传统栈和持久化栈,进一步降低其面积需求.根据SPEC CPU 2000基准测试以及设计编译器的评估结果,HRAS可利用仅1.1×10^(4)μm^(2)的设计面积将过程返回的每千条指令误预测(MPKI)降至2.4×10^(−3),其误预测相比现有RAS可降低96%.
-
关键词
返回地址预测
猜测执行
污染恢复
持久化
后备预测
-
Keywords
return address prediction
speculative execution
corruption recovery
persistence
backup prediction
-
分类号
TP332
[自动化与计算机技术—计算机系统结构]
-
-
题名一种抗地址淹没的缓冲区栈溢出算法
被引量:2
- 2
-
-
作者
唐成华
彭灿
刘猛
钱俊彦
-
机构
桂林电子科技大学广西可信软件重点实验室
桂林电子科技大学广西密码学与信息安全重点实验室
-
出处
《计算机应用研究》
CSCD
北大核心
2017年第12期3758-3761,共4页
-
基金
国家自然科学基金资助项目(61462020
61562015)
+3 种基金
广西自然科学基金资助项目(2014GXNSFAA118375)
广西可信软件重点实验室项目(kx201506)
广西密码学与信息安全重点实验室课题(GCIS201619)
广西高等学校高水平创新团队及卓越学者计划资助项目
-
文摘
缓冲区溢出是常见的网络漏洞攻击,其中最重要的是栈溢出攻击。通过分析缓冲区溢出攻击的方法和特点,提出一种基于Stack Shield改进的Ret Protect算法。首先利用IDA Pro对源程序反汇编分析,然后建立新的库函数,并通过修改GCC源代码来实现程序执行时对函数返回地址的备份的方法来检测缓冲区溢出攻击的发生。与其他栈溢出攻击检测方法相比,Ret Protect算法可有效地阻止对返回地址进行淹没的栈溢出攻击,对用户透明,系统兼容性好。
-
关键词
缓冲区溢出
栈溢出
地址淹没
返回地址备份
-
Keywords
buffer overflow
stack overflow
address flooding
return address backup
-
分类号
TP393.08
[自动化与计算机技术—计算机应用技术]
-
-
题名后备栈:一种高效的返回地址栈修复机制
- 3
-
-
作者
孙彩霞
唐宏伟
张民选
-
机构
国防科技大学计算机学院
-
出处
《计算机工程与科学》
CSCD
2006年第6期115-117,134,共4页
-
基金
国家863计划资助项目(2002AA110020)
国家自然科学基金资助项目(60376018)
-
文摘
当前,大多数高性能微处理器都使用返回地址栈为返回指令提供预测目标地址。而要想获得高的返回地址预测精度,在发生分支误预测后对返回地址栈进行修复是必不可少的。本文首先分析了三种常见的返回地址栈修复机制,提出了一种新的返回地址栈修复机制——后备栈,并详细描述了后备栈机制的逻辑实现和工作原理。最后,本文把后备栈机制和其他三种常见的修复机制进行了比较。在不发生返回地址栈溢出时,使用后备栈机制能够获得100%的返回地址预测精度。
-
关键词
返回地址栈
返回地址栈修复机制
后备栈
分支预测
-
Keywords
return-address stack
return-address stack repair mechanism
backup stack
branch prediction
-
分类号
TP303
[自动化与计算机技术—计算机系统结构]
-