动态二进制翻译技术综述 - 张锦; 单泽虎; 刘晓东; 王文竹; 余杰; 彭龙; 谢启友 (计算机科学与探索, 2024)
TP311; 在构建国产软件生态系统中,解决程序的兼容性问题至关重要.随着计算机架构的多样化发展,确保软件能够在不同平台和硬件环境中顺畅运行,已经成为当下软件开发过程中的一项紧迫任务.在此背景下,动态二进制翻译(DBT)技术展现出其重大意义.作为一种实现不同指令集架构(ISA)之间程序或软件互操作性的核心技术,DBT通过运行时指令转换,不仅实现了软件跨平台的兼容运行,也极大地扩展了软件的适用范围和灵活性.然而,DBT技术的引入同样对系统在运行效率和资源利用率方面提出了更高的要求.对DBT技术的相关内容进行了综述,包括其基本工作原理、研究进展、关键技术以及相应的优化方法.介绍了DBT技术的基本原理及发展历程.详细阐述了DBT的研究进展,尤其是在提高翻译准确性和执行效率方面所取得的重要成果.进一步地,对六类DBT优化技术特性进行了介绍,这些技术包括:基于运行时优化、基于控制流优化、基于指令级优化、基于安全性与隔离性优化、基于资源管理优化以及基于软硬件协同优化.分别基于这些关键技术进一步分类总结,介绍了各自的优化技术及面临的挑战.从技术发展趋势、应用领域扩展、性能提升策略等多个角度,对DBT技术未来的研究方向和发展前景进行了探讨.