资源描述:
《基于qemu的热点代码探测与动态优化模型的-研究与实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ABSTRACTABSTRACTBinarytranslationtechnologyisthecoretechnologyofsoftwareportableacrossplatformsandhardwaresimulation,whichenablestheexecutableobjectfileofdifferenthardware/softwareplatformstobeexecutedonanotherone,andisconvenientforhardwarelogicverificationandsystemso
2、ftwaredebuggingaswell.Dynamicbinarytranslationtechnologyiscurrentlythemostpopularbinarytranslationtechnology.Ittakesthestrategyofreal-timetranslationandexecutiontotransformthebinarycodeoftheobjectCPUarchitectureintothelocalone,andequipswithcharacteristicsofreal-timetr
3、anslation,rapidresponse,multi-sourcesandmulti-targetsandsoon.Dynamicbinarytranslation,however,isstillonthestageofcontinuousdevelopmentandneededtobeperfected.Forexample,combineswithdifferenthardwaretechnologiestoacceleratetheexecutionspeedoftheemulator,introducesnovela
4、ndefficientoptimizationalgorithmtoimprovequalityoftranslatedcodeetc.Howtotranslateandoptimizeitfasthasbeenthehotresearchpointforalongtime.QEMUisatypicaldynamicbinarytranslationsystem,itusesdynamicbinarytranslationtechnologytoachievereal-timetranslationandexecutiononth
5、etargetbinarycode,andhavemulti-sourcesandmulti-targets,rapidtranslation,supportself-referencing/self-modifyingcodeandothercharacteristics.Comparedtothefasttranslation,however,thehostcodegeneratedbyQEMUoftenexistmanyunnecessarymemoryaccessandregistermoveoperations,thes
6、ewillleadtosignificantexecutionoverhead.Besidesthat,QEMUtranslates,optimizesandexecutestheobjectbinarycodeinaserializedway,whichleadsmanyadvancedoptimizationalgorithmstobehardlyused,becauseofthesealgorithmsdooptimizationneedsfortime-consumingoptimizationoperation,ando
7、ptimizationoverheadoftenoutweighsthebenefits.ThepaperstudiestheTCGtranslationengineindetails,andputforwards,basedontheresearch,amodelofhotspotcodedetectionanddynamicoptimization:combinationwithmulti-coresofprocessesandmulti-threadstechnologies,implementationtodetectth
8、ehotspotcodeofQEMUthroughcodeinstrumentationandNETalgorithm,andII万方数据ABSTRACTmergethemintoasuperblock.Whenasuperblockisgener