Scalable Support for Multithreaded Applications on Dynamic Binary Instrumentation Systems

Free registration required

Executive Summary

Dynamic binary instrumentation systems are used to inject or modify arbitrary instructions in existing binary applications; several such systems have been developed over the past decade. Much of the literature describing the internal architecture and performance of these systems has focused on executing single-threaded guest applications. In this paper, the authors discuss the specific design decisions necessary for supporting large, multi-threaded applications on JIT-based dynamic instrumentation systems. While implementing a working solution for multi-threading is straightforward, providing a system that scales in terms of memory and performance is much more intricate.

  • Format: PDF
  • Size: 864.1 KB