Direct Mapping based Binary Translation Rule Generator with Considering Retargetability

재목적성을 고려한 직접 매핑 기반의 이진 변환 규칙 생성 도구

  • 서용진 (충남대학교 컴퓨터공학과) ;
  • 김현수 (충남대학교 컴퓨터공학과)
  • Received : 2014.03.12
  • Accepted : 2014.05.07
  • Published : 2014.07.15

Abstract

Binary translation is a restructuring process in order to execute a program targeting a specific device on the other devices. In binary translation, it is very important to generate the translation rules between two devices. There are two methods for generating the translation rules, direct and indirect mapping. The direct mapping is the method for performance, while the indirect mapping is the method for retargetability. This paper suggests a binary translation method based on the direct mapping for the embedded systems. Because, however, the retargetability is also important requirement, we suggest the direct mapping based binary translation with considering the retargetability. In addition, we implement an automatic generation tool for translation rules to prove our concept. Through this method, we can generate the translation rules with considering the performance as well as the retargetability. Furthermore, we can reduce costs for the binary translation.

이진 변환은 특정 장치에서 동작하도록 구성된 프로그램을 다른 장치에서 동작할 수 있도록 재구성하는 과정을 말한다. 이진 변환을 수행하기 위해서는 두 장치 사이의 변환 규칙을 생성하는 것이 매우 중요하다. 변환 규칙을 생성하는 방법은 직접 매핑과 간접 매핑으로 나뉜다. 직접 매핑은 성능을 위한 방법인 반면, 간접 매핑은 재목적성을 위한 방법이다. 본 논문에서는 임베디드 시스템에 적합한 직접 매핑 기반의 이진 변환을 수행한다. 그렇지만 재목적성 역시 중요한 요구사항이기 때문에, 재목적성을 고려한 직접 매핑 기반의 이진 변환 방법을 제안한다. 또한 제안된 방법을 바탕으로 자동으로 변환 규칙을 생성하는 도구를 구현한다. 이 방법을 통해서 성능과 재목적성을 모두 고려한 변환 규칙을 생성할 수 있으며, 더 나아가 이진 변환을 수행하는데 소요되는 비용을 줄일 수 있다.

Keywords

Acknowledgement

Supported by : 한국연구재단

References

  1. M. Probst, "Dynamic Binary Translation," Proc. of the UKUUG Linux Developers' Conference, Bristol, United Kingdom, Jul. 2002.
  2. V. Barrio, "Study of the techniques for emulation programming," 2001.
  3. J. Choi, Y. Cheon, "Development of Prototype Hypervisor for ERC32 using DBT Engine for LEON3," Proc. of the KSAS Fall Conference, pp. 699-705, 2013.
  4. M. Souza, D. Nicacio, G. Araujo, "ISAMAP: Instruction Mapping Driven by Dynamic Binary Translation," 3rd Workshop on Architectural and Microarchitectural Support for Binary Translation, 2010.
  5. L. Michel, N. Fournel, F. Petrot, "Fast Simulation of Systems Embedding VLIW Processors," In Proc. of the 10th IEEE/ACM Int'l Conf. on Hardware/ Software Codesign and System Synthesis, 2012.
  6. D. Ung, C. Cifuentes, "Machine-Adaptable Dynamic Binary Translation," IEICE Trans. Fundamentals, vol.E79-A, no.9, pp.1338-1353, Sep., 1996.
  7. C. Cifuentes, B. Lewis, D. Ung, "Walkabout : A Retargetable Dynamic Binary Translation," IEICE Trans. Fundamentals, vol.E79-A, no.9, pp.1338-1353, 1996.
  8. Y. Yang, H. Guan, E. Zhu, H. Yang, B. Liu, "CrossBit : A Multi-Sources and Multi-Targets DBT," 1st Int'l Conf. on Cloud Computing, GRIDs, and Virtualization, pp.41-47, 2010.
  9. D. Hong, C. Hsu, P. Yew, J. Wu, W. Hsu, P. Liu, C. Wang, Y. Chung, "HQEMU: A Multi-Threaded and Retargetable Dynamic Binary Translator on Multicores," In CGO '12: Proc. of the 10th annual IEEE/ACM int'l symposium on Code generation and optimization, 2012.
  10. M. Choi, S. Lim, "x86-Android performance improvement for x86 smart mobile devices," Concurrency and Computation: Practice and Experience, doi: 10.1002/cpe.3189, 2014.
  11. X. Liu, J. Pang, M. Yin, L. Bai, W. Chen, "MSISDL : A Semantic Description Language for Multisource Binary Translation Systems," The 8th Int'l Conf. on Computer Science & Education, 2013.
  12. J. Lee, Y. Seo, H. Kim, D. Mun, "Automatic Generation of Binary Code Translation Rule for Embedded System," Proc. of the 40th KIISE Fall Conference, pp.498-500, 2013.
  13. C. Codere, The Virtual Instruction Set (VIS) [Online]. Available: http://www.optimasc.com/pro ducts/vis/fvis.pdf (downloaded 2014, April 20)
  14. ANTLR v4 [Internet], http://www.antlr.org (downloaded 2014, April 10)
  15. SPARC v7 [Internet], http://aerosupport.atmel.co m/Atmel/doc4168.pdf (downloaded 2014, April 20)