面向受限系統(tǒng)的分布式動(dòng)態(tài)二進(jìn)制翻譯器的分析與研究
本文選題:動(dòng)態(tài)二進(jìn)制翻譯器 + 代碼緩存 ; 參考:《上海交通大學(xué)》2012年博士論文
【摘要】:動(dòng)態(tài)二進(jìn)制翻譯器借助于二進(jìn)制翻譯技術(shù),其發(fā)展初期通常被用在程序移植、代碼優(yōu)化等方面,目前也越來越多的被廣泛的應(yīng)用于硬件設(shè)計(jì)、系統(tǒng)安全等領(lǐng)域。然而,當(dāng)前關(guān)于動(dòng)態(tài)二進(jìn)制翻譯器乃至二進(jìn)制技術(shù)發(fā)展尚存在一些挑戰(zhàn),主要的挑戰(zhàn)來自于以下幾個(gè)方面。首先,商用的動(dòng)態(tài)二進(jìn)制翻譯器普遍與底層硬件存在著強(qiáng)烈的依賴關(guān)系,可擴(kuò)展性和兼容性差;其次,學(xué)術(shù)界的動(dòng)態(tài)二進(jìn)制翻譯器雖然在擴(kuò)展性上有所突破,但其性能往往令人詬病,得不到大面積推廣應(yīng)用;再次,當(dāng)今的動(dòng)態(tài)二進(jìn)制翻譯技術(shù)及動(dòng)態(tài)二進(jìn)制翻譯器的應(yīng)用幾乎只局限于商用服務(wù)器或者個(gè)人電腦領(lǐng)域,卻不支持在一些硬件資源有限的瘦客戶端上的應(yīng)用。 本文在深入研究當(dāng)今動(dòng)態(tài)二進(jìn)制翻譯器相關(guān)技術(shù)現(xiàn)狀的基礎(chǔ)上,針對(duì)這些挑戰(zhàn)提出一系列系統(tǒng)的解決方案。相比于之前的研究工作,本文的研究致力于提供一套更為實(shí)際、全面和高效的解決方案,該方案可以為今后的動(dòng)態(tài)二進(jìn)制翻譯器系統(tǒng)設(shè)計(jì)提供幫助,同時(shí)也拓展了在其它應(yīng)用場合,如瘦客戶端領(lǐng)域、云計(jì)算環(huán)境領(lǐng)域的應(yīng)用前景。 具體而言,本文的主要貢獻(xiàn)有如下幾點(diǎn): 1.為動(dòng)態(tài)二進(jìn)制翻譯器設(shè)計(jì)了一套通用的虛擬中間指令集V-IIS。借助于該中間指令集,在不損失過多性能的前提下,動(dòng)態(tài)二進(jìn)制翻譯器能較好的實(shí)現(xiàn)“多源多目標(biāo)”的目的,減少了動(dòng)態(tài)二進(jìn)制翻譯器開發(fā)的復(fù)雜度,節(jié)省了人力物力; 2.為瘦客戶端設(shè)計(jì)了一種分布式的動(dòng)態(tài)二進(jìn)制翻譯器框架DistriBit。在該分布式框架中,根據(jù)服務(wù)器和瘦客戶端功能和計(jì)算能力的強(qiáng)弱安排不同的分工,功能強(qiáng)大的服務(wù)器負(fù)責(zé)代碼翻譯和優(yōu)化的工作,資源有限的客戶端負(fù)責(zé)代碼執(zhí)行工作; 3.為DistriBit中的瘦客戶端設(shè)計(jì)了一種代碼緩存管理策略。針對(duì)瘦客戶端緩存的大小和代碼執(zhí)行的情況,在服務(wù)器端為其量身制定了相適應(yīng)的緩存管理策略,借助于該緩存管理策略的指導(dǎo),瘦客戶端可以進(jìn)行較復(fù)雜的高效率的代碼管理; 4.在云計(jì)算虛擬分布式環(huán)境下,我們研究了一些優(yōu)化因素,諸如中間指令集的虛擬寄存器的數(shù)量、熱路徑上基本塊的數(shù)量對(duì)DistriBit系統(tǒng)的性能影響。
[Abstract]:With the help of binary translation technology, dynamic binary translator is usually used in the fields of program transplantation, code optimization and so on. At present, it is widely used in hardware design, system security and other fields. However, there are still some challenges in the development of dynamic binary translators and even binary technology. The main challenges come from the following aspects. First of all, commercial dynamic binary translators generally have strong dependence on the underlying hardware, scalability and compatibility are poor; secondly, the dynamic binary translators in academic circles have a breakthrough in expansibility. But its performance is often criticized and can not be widely used. Thirdly, the application of dynamic binary translation technology and dynamic binary translator is almost limited to commercial servers or personal computers. Applications on thin clients with limited hardware resources are not supported. In this paper, based on a deep study of the current status of dynamic binary translator technologies, a series of systematic solutions to these challenges are proposed. Compared with previous research work, this paper is devoted to providing a more practical, comprehensive and efficient solution, which can be used for the design of dynamic binary translator system in the future. At the same time, it also expands the application prospects in other applications, such as thin client domain and cloud computing environment. Specifically, the main contributions of this paper are as follows: 1. A general virtual intermediate instruction set V-IIS is designed for dynamic binary translator. With the help of the intermediate instruction set, the dynamic binary translator can achieve the purpose of "multi-source and multi-objective" without losing too much performance, thus reducing the complexity of the development of the dynamic binary translator and saving manpower and material resources. 2. A distributed dynamic binary translator framework DistriBitfor thin client is designed. In this distributed framework, different division of labor is arranged according to the function and computing power of server and thin client, the powerful server is responsible for code translation and optimization, and the client with limited resources is responsible for code execution. 3. A code cache management strategy is designed for thin clients in DistriBit. According to the size of the thin client cache and the execution of the code, a suitable cache management strategy is developed on the server side, with the help of the guidance of the cache management strategy. Thin client can perform more complex and efficient code management; 4. In the cloud computing virtual distributed environment, we study some optimization factors, such as the number of virtual registers in the intermediate instruction set and the number of basic blocks on the hot path, which affect the performance of the DistriBit system.
【學(xué)位授予單位】:上海交通大學(xué)
【學(xué)位級(jí)別】:博士
【學(xué)位授予年份】:2012
【分類號(hào)】:TP302
【參考文獻(xiàn)】
相關(guān)期刊論文 前2條
1 李劍慧;馬湘寧;朱傳琪;;動(dòng)態(tài)二進(jìn)制翻譯與優(yōu)化技術(shù)研究[J];計(jì)算機(jī)研究與發(fā)展;2007年01期
2 白童心,馮曉兵,武成崗,張兆慶;優(yōu)化動(dòng)態(tài)二進(jìn)制翻譯器DigitalBridge[J];計(jì)算機(jī)工程;2005年10期
相關(guān)博士學(xué)位論文 前2條
1 唐鋒;動(dòng)態(tài)二進(jìn)制翻譯優(yōu)化研究[D];中國科學(xué)院研究生院(計(jì)算技術(shù)研究所);2006年
2 馬湘寧;二進(jìn)制翻譯關(guān)鍵技術(shù)研究[D];中國科學(xué)院研究生院(計(jì)算技術(shù)研究所);2004年
相關(guān)碩士學(xué)位論文 前7條
1 包云程;構(gòu)建基于動(dòng)態(tài)二進(jìn)制翻譯技術(shù)的進(jìn)程虛擬機(jī)[D];上海交通大學(xué);2007年
2 史輝輝;動(dòng)態(tài)二進(jìn)制翻譯中基于profile的優(yōu)化算法研究[D];上海交通大學(xué);2008年
3 潘麗君;動(dòng)態(tài)二進(jìn)制翻譯器中Code Cache管理策略的研究與分析[D];上海交通大學(xué);2009年
4 胡坤;動(dòng)態(tài)二進(jìn)制翻譯中的熱路徑優(yōu)化[D];上海交通大學(xué);2009年
5 姜玲燕;動(dòng)態(tài)二進(jìn)制翻譯中基于中間代碼的優(yōu)化研究[D];上海交通大學(xué);2008年
6 李庭濤;虛擬機(jī)的軟硬件協(xié)同設(shè)計(jì)方法研究[D];上海交通大學(xué);2009年
7 劉博;基于軟硬件協(xié)同設(shè)計(jì)的虛擬機(jī)的并行性研究[D];上海交通大學(xué);2008年
,本文編號(hào):1915298
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/1915298.html