欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

二進(jìn)制翻譯方法、裝置、電子設(shè)備及可讀存儲(chǔ)介質(zhì)與流程

文檔序號:40554500發(fā)布日期:2025-01-03 11:14閱讀:13來源:國知局
二進(jìn)制翻譯方法、裝置、電子設(shè)備及可讀存儲(chǔ)介質(zhì)與流程

本發(fā)明涉及計(jì)算機(jī),特別是涉及一種二進(jìn)制翻譯方法、裝置、電子設(shè)備以及可讀存儲(chǔ)介質(zhì)。


背景技術(shù):

1、二進(jìn)制翻譯指通過二進(jìn)制翻譯技術(shù),將某isa(instruction?set?architecture,指令集架構(gòu))的應(yīng)用程序(如x86的應(yīng)用程序)通過二進(jìn)制翻譯的方式運(yùn)行在另一isa上(如loongarch),以實(shí)現(xiàn)跨架構(gòu)跨指令集程序兼容。

2、指令指針(instruction?pointer),又稱為程序計(jì)數(shù)器(program?counter,簡稱pc),是一種特殊的寄存器,用于存儲(chǔ)正在執(zhí)行的程序中下一條要執(zhí)行的指令的地址。在多數(shù)計(jì)算機(jī)體系結(jié)構(gòu)中,指令指針是一個(gè)關(guān)鍵的寄存器,它幫助控制程序的流程,指導(dǎo)處理器執(zhí)行正確的指令序列。

3、在x86指令集架構(gòu)中,為了獲取指令指針,需要使用函數(shù)調(diào)用指令。但是對大量用于獲取指令指針的函數(shù)調(diào)用指令進(jìn)行二進(jìn)制翻譯,會(huì)產(chǎn)生大量的冗余指令,進(jìn)而影響翻譯效率以及影響翻譯后程序的運(yùn)行效率。


技術(shù)實(shí)現(xiàn)思路

1、鑒于上述問題,提出了本發(fā)明實(shí)施例以便提供一種克服上述問題或者至少部分地解決上述問題的一種二進(jìn)制翻譯方法,可以減少因語義翻譯產(chǎn)生的冗余指令,以及減少對tb的切分次數(shù),進(jìn)而提高動(dòng)態(tài)翻譯器的翻譯效率以及提高翻譯后程序的運(yùn)行效率。

2、相應(yīng)的,本發(fā)明實(shí)施例還提供了一種二進(jìn)制翻譯裝置、電子設(shè)備、以及一種計(jì)算機(jī)程序產(chǎn)品,用以保證上述方法的實(shí)現(xiàn)及應(yīng)用。

3、第一方面,本發(fā)明實(shí)施例公開了一種二進(jìn)制翻譯方法,所述方法包括:

4、在二進(jìn)制翻譯過程中,識別當(dāng)前指令是否為目標(biāo)調(diào)用指令;所述目標(biāo)調(diào)用指令用于調(diào)用目標(biāo)函數(shù),所述目標(biāo)函數(shù)用于獲取指令指針;

5、若識別當(dāng)前指令是目標(biāo)調(diào)用指令,則對所述目標(biāo)調(diào)用指令進(jìn)行優(yōu)化翻譯;所述優(yōu)化翻譯用于將所述目標(biāo)調(diào)用指令翻譯為立即數(shù)加載指令,所述立即數(shù)加載指令用于將當(dāng)前指令的下一條指令的地址作為立即數(shù)加載至指定寄存器。

6、第二方面,本發(fā)明實(shí)施例公開了一種二進(jìn)制翻譯裝置,所述裝置包括:

7、指令識別模塊,用于在二進(jìn)制翻譯過程中,識別當(dāng)前指令是否為目標(biāo)調(diào)用指令;所述目標(biāo)調(diào)用指令用于調(diào)用目標(biāo)函數(shù),所述目標(biāo)函數(shù)用于獲取指令指針;

8、優(yōu)化翻譯模塊,用于若識別當(dāng)前指令是目標(biāo)調(diào)用指令,則對所述目標(biāo)調(diào)用指令進(jìn)行優(yōu)化翻譯;所述優(yōu)化翻譯用于將所述目標(biāo)調(diào)用指令翻譯為立即數(shù)加載指令,所述立即數(shù)加載指令用于將當(dāng)前指令的下一條指令的地址作為立即數(shù)加載至指定寄存器。

9、第三方面,本發(fā)明實(shí)施例公開了一種電子設(shè)備,包括:處理器、存儲(chǔ)器、通信接口和通信總線,所述處理器、所述存儲(chǔ)器和所述通信接口通過所述通信總線完成相互間的通信;所述存儲(chǔ)器用于存放至少一可執(zhí)行指令,所述可執(zhí)行指令使所述處理器執(zhí)行如前述中任一所述的二進(jìn)制翻譯方法的步驟。

10、第四方面,本發(fā)明實(shí)施例公開了一種可讀存儲(chǔ)介質(zhì),所述可讀存儲(chǔ)介質(zhì)上存儲(chǔ)程序或指令,所述程序或指令被處理器執(zhí)行時(shí)能夠?qū)崿F(xiàn)如前述中任一所述的二進(jìn)制翻譯方法。

11、第五方面,本發(fā)明實(shí)施例公開了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)如前述中任一所述的二進(jìn)制翻譯方法的步驟。

12、本發(fā)明實(shí)施例包括以下優(yōu)點(diǎn):

13、本發(fā)明實(shí)施例在二進(jìn)制翻譯過程中,識別當(dāng)前指令是否為目標(biāo)調(diào)用指令,目標(biāo)調(diào)用指令用于調(diào)用獲取指令指針的目標(biāo)函數(shù)。在識別到目標(biāo)調(diào)用指令的情況下,對所述目標(biāo)調(diào)用指令進(jìn)行優(yōu)化翻譯,直接翻譯為裝載下一條指令的地址(即指令指針)的立即數(shù)加載指令,而不是對目標(biāo)調(diào)用指令基于語義進(jìn)行逐步翻譯?;谡Z義進(jìn)行逐步翻譯的傳統(tǒng)方式需要將這條目標(biāo)調(diào)用指令以及這條目標(biāo)調(diào)用指令調(diào)用的目標(biāo)函數(shù)中包含的各指令分別進(jìn)行翻譯,不僅會(huì)產(chǎn)生冗余指令,而且由于函數(shù)調(diào)用指令需作為tb結(jié)尾,還會(huì)增加tb的切分次數(shù),進(jìn)而影響翻譯效率以及影響翻譯后程序的運(yùn)行效率。通過本發(fā)明實(shí)施例的優(yōu)化翻譯,只需要將這條目標(biāo)調(diào)用指令直接翻譯成立即數(shù)加載指令,即可實(shí)現(xiàn)獲取指令指針的效果,不僅可以減少因語義翻譯產(chǎn)生的冗余指令,而且由于立即數(shù)加載指令不用作為tb的結(jié)尾,可以減少對tb的切分次數(shù),進(jìn)而提高翻譯效率以及提高翻譯后程序的運(yùn)行效率。



技術(shù)特征:

1.一種二進(jìn)制翻譯方法,其特征在于,所述方法包括:

2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對所述目標(biāo)調(diào)用指令進(jìn)行優(yōu)化翻譯之前,所述方法還包括:

3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述方法還包括:

4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述識別當(dāng)前指令是否為目標(biāo)調(diào)用指令,包括:

5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對所述目標(biāo)調(diào)用指令進(jìn)行優(yōu)化翻譯,包括:

6.根據(jù)權(quán)利要求1至5中任一所述的方法,其特征在于,所述目標(biāo)函數(shù)為x86指令集架構(gòu)中用于獲取指令指針的系列函數(shù)中的任意一個(gè),所述系列函數(shù)用于獲取指令指針并寫入不同的指定寄存器。

7.一種二進(jìn)制翻譯裝置,其特征在于,所述裝置包括:

8.一種電子設(shè)備,其特征在于,包括:處理器、存儲(chǔ)器、通信接口和通信總線,所述處理器、所述存儲(chǔ)器和所述通信接口通過所述通信總線完成相互間的通信;所述存儲(chǔ)器用于存放至少一可執(zhí)行指令,所述可執(zhí)行指令使所述處理器執(zhí)行如權(quán)利要求1至6任一所述的二進(jìn)制翻譯方法的步驟。

9.一種可讀存儲(chǔ)介質(zhì),其特征在于,所述可讀存儲(chǔ)介質(zhì)上存儲(chǔ)程序或指令,所述程序或指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1至6任一所述的二進(jìn)制翻譯方法的步驟。

10.一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1至6任一所述的二進(jìn)制翻譯方法的步驟。

11.一種電子設(shè)備,包括:

12.根據(jù)權(quán)利要求11所述的電子設(shè)備,其中,所述二進(jìn)制翻譯器按基本塊進(jìn)行翻譯,并且在劃分基本塊時(shí),不將預(yù)置哈希表中查詢到的函數(shù)調(diào)用指令作為基本塊的結(jié)尾。

13.一種二進(jìn)制翻譯程序產(chǎn)品,包含宿主機(jī)可執(zhí)行指令,當(dāng)由宿主機(jī)處理器執(zhí)行時(shí),使得所述處理器執(zhí)行以下操作:


技術(shù)總結(jié)
本發(fā)明實(shí)施例提供了一種二進(jìn)制翻譯方法、裝置、電子設(shè)備及可讀存儲(chǔ)介質(zhì),所述方法包括:在二進(jìn)制翻譯過程中,識別當(dāng)前指令是否為目標(biāo)調(diào)用指令;所述目標(biāo)調(diào)用指令用于調(diào)用目標(biāo)函數(shù),所述目標(biāo)函數(shù)用于獲取指令指針;若識別當(dāng)前指令是目標(biāo)調(diào)用指令,則對所述目標(biāo)調(diào)用指令進(jìn)行優(yōu)化翻譯;所述優(yōu)化翻譯用于將所述目標(biāo)調(diào)用指令翻譯為立即數(shù)加載指令,所述立即數(shù)加載指令用于將當(dāng)前指令的下一條指令的地址作為立即數(shù)加載至指定寄存器。本發(fā)明可以減少因語義翻譯產(chǎn)生的冗余指令,以及減少對TB的切分次數(shù),進(jìn)而提高動(dòng)態(tài)翻譯器的翻譯效率以及提高翻譯后程序的運(yùn)行效率。

技術(shù)研發(fā)人員:李晗璐,曾露
受保護(hù)的技術(shù)使用者:龍芯中科技術(shù)股份有限公司
技術(shù)研發(fā)日:
技術(shù)公布日:2025/1/2
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
于田县| 平远县| 龙江县| 大连市| 礼泉县| 简阳市| 高平市| 肃北| 济源市| 洪江市| 荔波县| 扶风县| 乌拉特前旗| 霍城县| 锡林浩特市| 莎车县| 东丰县| 洛南县| 汝南县| 佛坪县| 申扎县| 大名县| 大冶市| 辽中县| 万源市| 宿州市| 汝城县| 桃园市| 合水县| 甘孜| 霍山县| 静安区| 泊头市| 利川市| 石台县| 石景山区| 义乌市| 临江市| 西林县| 通渭县| 惠州市|