检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
机构地区:[1]解放军信息工程大学,郑州450002 [2]数学工程与先进计算国家重点实验室,郑州450002
出 处:《小型微型计算机系统》2015年第4期683-688,共6页Journal of Chinese Computer Systems
基 金:国家"八六三"高技术研究发展计划项目(2009AA012201)资助;国家核高基重大专项(2009ZX01036-001-001)资助;河南省重大科技攻关专项(092101210501)资助
摘 要:动态二进制翻译通过对程序的动态跟踪,实时对目标代码进行解码和翻译,被广泛地应用于软件跨平台移植等领域.但是动态二进制翻译仍然存在运行开销过大和翻译低效等问题,为解决这一问题,开发了一种基于QEMU的多线程动态二进制翻译优化系统.系统通过引入多线程技术,将翻译执行前端和热路径优化后端分别放置在不同的线程中,实现了前端翻译执行和后端热路径优化的多线程并行执行.系统前端利用局部预测算法进行热路径选择,后端通过超级块封装和条件跳转优化进行本地码优化.系统的cache管理采用了分层管理策略.整体性能测试实验表明,系统在低翻译执行开销的基础上,比现有二进制翻译平台QEMU整体性能提升了约5%.Dynamic binary translation decodes and translates target codes in real time through dynamic tracking, which is widely used in areas such as cross-platform migration software. But there still exists some problems, such as too heavy dynamic binary translation overhead and inefficient translation. To solve these problems, a multithreaded dynamic binary translation optimization system is devel- oped, which is based on QEMU. System through introducing multithread technology sets translation execution front end and hot paths optimization back end placed in different threads to achieve multithreaded parallel execution of the front-end and back-end. System front-end use local prediction algorithm to select the hot paths and back-end optimize host codes via superblock building and condition- al branch optimization. Cache management of system uses a hierarchical management strategy. The experiments on overall performance test proves that the overall performance of system based on low-cost translation overhead is improved by 5% than the existing binary translation platform QEMU.
关 键 词:动态二进制翻译 QEMU 多线程 局部预测 热路径优化
分 类 号:TP314[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.40