Font Size: a A A

IA-32 Memory Management Unit Virtualization On IA-64 Platform Based On Dynamic Binary Translation

Posted on:2009-03-04Degree:MasterType:Thesis
Country:ChinaCandidate:C XingFull Text:PDF
GTID:2178360242477471Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
Binary Translation (BT) is an effective way for migrating software program between different hardware platforms, which helps the development of new micro architecture. User-level binary translation helps applications to run on different platform without modifying or recompiling, while system-level binary translation supports unmodified operation system to run on another platform. It virtualizes the whole hardware platform.Compared with user-level BT, system-level BT faced with more challenges, such as privilege instruction emulation, virtualization of memory management unit (MMU) with multi-address space, emulation of I/O operation. This paper will focus on MMU virtualization, and virtualize IA-32 MMU on IA-64 platform with pure software solution, which helps unmodified IA-32 operation system to run on IA-64 platform.The goal of MMU virtualization is to achieve high performance with full compatibility with IA-32. Following components are included: IA-32 segment mechanism emulation, page mechanism emulation, address-space protection, translated code cache management for multi-address space and also self-modifying-code handling.The experiment of SPEC2K INT shows that the performance is 60% compared with running in native IA-32 system, and MMU virtualization only occupies 2.6% of the total running time. The result shows that it's doable to implement effective MMU virtualization between different micro architecture through pure software solution.
Keywords/Search Tags:System-level dynamic binary translation, memory management unit virtualization, translated code cache management
PDF Full Text Request
Related items