计算机研究与发展
計算機研究與髮展
계산궤연구여발전
JOURNAL OF COMPUTER RESEARCH AND DEVELOPMENT
2007年
11期
1946-1954
,共9页
谢海斌%武成岗%崔慧敏%李晶
謝海斌%武成崗%崔慧敏%李晶
사해빈%무성강%최혜민%리정
二进制翻译%浮点翻译%X86浮点栈%扩展虚拟栈%归一
二進製翻譯%浮點翻譯%X86浮點棧%擴展虛擬棧%歸一
이진제번역%부점번역%X86부점잔%확전허의잔%귀일
二进制翻译系统是一种基于软件的跨平台代码迁移系统,它将一种体系结构的二进制代码翻译成另一种体系结构的二进制代码.二进制翻译可以用于解决遗产代码的迁移问题,也可以实现不同硬件平台之间软件的通用.浮点栈的处理已成为以X86为源的二进制翻译的研究中的关键性问题之一,如何处理X86浮点栈问题直接关系到以X86为源的二进制翻译系统的性能.针对X86浮点寄存器栈的特征,提出了一种扩展虚拟栈(extending virtual stack)处理方案.它采用归一的方法,保证了每个基本块中的运算所涉及到的浮点寄存器可以直接映射到目标机器中的浮点寄存器,确保了翻译的效率,并利用翻译时的分析避免了在入口处不必要的判断;同时还给出了在基本块入口处判别一个基本块是否会出现浮点栈上溢和下溢的充分必要条件,为生成更加高效的代码提供了条件.实验表明,它能够在保证正确实现其功能的前提下,获得更好的执行效率.
二進製翻譯繫統是一種基于軟件的跨平檯代碼遷移繫統,它將一種體繫結構的二進製代碼翻譯成另一種體繫結構的二進製代碼.二進製翻譯可以用于解決遺產代碼的遷移問題,也可以實現不同硬件平檯之間軟件的通用.浮點棧的處理已成為以X86為源的二進製翻譯的研究中的關鍵性問題之一,如何處理X86浮點棧問題直接關繫到以X86為源的二進製翻譯繫統的性能.針對X86浮點寄存器棧的特徵,提齣瞭一種擴展虛擬棧(extending virtual stack)處理方案.它採用歸一的方法,保證瞭每箇基本塊中的運算所涉及到的浮點寄存器可以直接映射到目標機器中的浮點寄存器,確保瞭翻譯的效率,併利用翻譯時的分析避免瞭在入口處不必要的判斷;同時還給齣瞭在基本塊入口處判彆一箇基本塊是否會齣現浮點棧上溢和下溢的充分必要條件,為生成更加高效的代碼提供瞭條件.實驗錶明,它能夠在保證正確實現其功能的前提下,穫得更好的執行效率.
이진제번역계통시일충기우연건적과평태대마천이계통,타장일충체계결구적이진제대마번역성령일충체계결구적이진제대마.이진제번역가이용우해결유산대마적천이문제,야가이실현불동경건평태지간연건적통용.부점잔적처리이성위이X86위원적이진제번역적연구중적관건성문제지일,여하처리X86부점잔문제직접관계도이X86위원적이진제번역계통적성능.침대X86부점기존기잔적특정,제출료일충확전허의잔(extending virtual stack)처리방안.타채용귀일적방법,보증료매개기본괴중적운산소섭급도적부점기존기가이직접영사도목표궤기중적부점기존기,학보료번역적효솔,병이용번역시적분석피면료재입구처불필요적판단;동시환급출료재기본괴입구처판별일개기본괴시부회출현부점잔상일화하일적충분필요조건,위생성경가고효적대마제공료조건.실험표명,타능구재보증정학실현기공능적전제하,획득경호적집행효솔.