Fast Dynamic Binary Translation for the Kernel

被引:11
|
作者
Kedia, Piyus [1 ]
Bansal, Sorav [1 ]
机构
[1] Indian Inst Technol Delhi, Delhi, India
关键词
D O I
10.1145/2517349.2522718
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Dynamic binary translation (DBT) is a powerful technique with several important applications. System-level binary translators have been used for implementing a Virtual Machine Monitor [2] and for instrumentation in the OS kernel [10]. In current designs, the performance overhead of binary translation on kernel-intensive workloads is high. e.g., over 10x slowdowns were reported on the syscall nanobenchmark in [2], 2-5x slowdowns were reported on lmbench microbenchmarks in [10]. These overheads are primarily due to the extra work required to correctly handle kernel mechanisms like interrupts, exceptions, and physical CPU concurrency. We present a kernel-level binary translation mechanism which exhibits near-native performance even on applications with large kernel activity. Our translator relaxes transparency requirements and aggressively takes advantage of kernel invariants to eliminate sources of slowdown. We have implemented our translator as a loadable module in unmodified Linux, and present performance and scalability experiments on multiprocessor hardware. Although our implementation is Linux specific, our mechanisms are quite general; we only take advantage of typical kernel design patterns, not Linux-specific features. For example, our translator performs 3x faster than previous kernel-level DBT implementations while running the Apache web server.
引用
收藏
页码:101 / 115
页数:15
相关论文
共 50 条
  • [1] Comprehensive Kernel Instrumentation via Dynamic Binary Translation
    Feiner, Peter
    Brown, Angela Demke
    Goel, Ashvin
    ASPLOS XVII: SEVENTEENTH INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS, 2012, : 135 - 146
  • [2] Comprehensive Kernel Instrumentation via Dynamic Binary Translation
    Feiner, Peter
    Brown, Angela Demke
    Goel, Ashvin
    ACM SIGPLAN NOTICES, 2012, 47 (04) : 135 - 146
  • [3] Light-weight kernel instrumentation framework using dynamic binary translation
    Lee, Dongwoo
    Kim, Inhyuk
    Kim, Jeehong
    Jun, Hyung Kook
    Kim, Won Tae
    Lee, Sangwon
    Eom, Young Ik
    JOURNAL OF SUPERCOMPUTING, 2013, 66 (03): : 1613 - 1628
  • [4] Light-weight kernel instrumentation framework using dynamic binary translation
    Dongwoo Lee
    Inhyuk Kim
    Jeehong Kim
    Hyung Kook Jun
    Won Tae Kim
    Sangwon Lee
    Young Ik Eom
    The Journal of Supercomputing, 2013, 66 : 1613 - 1628
  • [5] FADATest: Fast and Adaptive Performance Regression Testing of Dynamic Binary Translation Systems
    Wu, Jin
    Dong, Jian
    Fang, Ruili
    Zhang, Wen
    Wang, Wenwen
    Zuo, Decheng
    2022 ACM/IEEE 44TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2022), 2022, : 896 - 908
  • [6] Dynamic and transparent binary translation
    Gschwind, M
    Altman, ER
    Sathaye, S
    Ledak, P
    Appenzeller, D
    COMPUTER, 2000, 33 (03) : 54 - +
  • [7] Dynamic binary translation and optimization
    Ebcioglu, K
    Altman, E
    Gschwind, M
    Sathaye, S
    IEEE TRANSACTIONS ON COMPUTERS, 2001, 50 (06) : 529 - 548
  • [8] Factorization of the translation kernel for fast rigid image alignment
    Rangan, Aaditya
    Spivak, Marina
    Anden, Joakim
    Barnett, Alex
    INVERSE PROBLEMS, 2020, 36 (02)
  • [9] Dynamic Binary Translation for SGX Enclaves
    Cui, Jinhua
    Shinde, Shweta
    Sen, Satyaki
    Saxena, Prateek
    Yuan, Pinghai
    ACM TRANSACTIONS ON PRIVACY AND SECURITY, 2022, 25 (04)
  • [10] Binary translation: Static, dynamic, retargetable?
    Cifuentes, C
    Malhotra, V
    INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 1996, : 340 - 349