Fast Dynamic Binary Translation for the Kernel
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 and for instrumentation in the OS kernel. 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-5x slowdowns were reported on lmbench microbenchmarks in. These overheads are primarily due to the extra work required to correctly handle kernel mechanisms like interrupts, exceptions, and physical CPU concurrency.