Skip to main content

Dynamic Binary Modification

Tools, Techniques and Applications

  • Book
  • © 2011

Overview

Part of the book series: Synthesis Lectures on Computer Architecture (SLCA)

This is a preview of subscription content, log in via an institution to check access.

Access this book

eBook USD 19.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 27.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

Licence this eBook for your library

Institutional subscriptions

Table of contents (8 chapters)

About this book

Dynamic binary modification tools form a software layer between a running application and the underlying operating system, providing the powerful opportunity to inspect and potentially modify every user-level guest application instruction that executes. Toolkits built upon this technology have enabled computer architects to build powerful simulators and emulators for design-space exploration, compiler writers to analyze and debug the code generated by their compilers, software developers to fully explore the features, bottlenecks, and performance of their software, and even end-users to extend the functionality of proprietary software running on their computers. Several dynamic binary modification systems are freely available today that place this power into the hands of the end user. While these systems are quite complex internally, they mask that complexity with an easy-to-learn API that allows a typical user to ramp up fairly quickly and build any of a number of powerful tools. Meanwhile, these tools are robust enough to form the foundation for software products in use today. This book serves as a primer for researchers interested in dynamic binary modification systems, their internal design structure, and the wide range of tools that can be built leveraging these systems. The hands-on examples presented throughout form a solid foundation for designing and constructing more complex tools, with an appreciation for the techniques necessary to make those tools robust and efficient. Meanwhile, the reader will get an appreciation for the internal design of the engines themselves. Table of Contents: Dynamic Binary Modification: Overview / Using a Dynamic Binary Modifier / Program Analysis and Debugging / Active Program Modification / Architectural Exploration / Advanced System Internals / Historical Perspectives / Summary and Observations

Authors and Affiliations

  • University of Virginia, USA

    Kim Hazelwood

About the author

Kim Hazelwood is an Assistant Professor of Computer Science at the University of Virginia and a faculty consultant for Intel Corporation. She works at the boundary between hardware and software,with research efforts focusing on computer architecture, run-time optimizations, and the implementation and applications of process virtualization systems. She received the Ph.D. degree from Harvard University in 2004. Since then, she has become widely known for her active contributions to the Pin dynamic instrumentation system,which allows users to easily inject arbitrary code into existing program binaries at run time (www.pintool.org). Pin is widely used throughout industry and academia to investigate new approaches to program introspection, optimization, security, and architectural design. It has been downloaded over 50,000 times and cited in over 800 publications since it was released in July 2004.Kim has published over 40 peer-reviewed articles related to computer architecture and virtualization.She has served on over two dozen program committees,including ISCA, PLDI, MICRO, OSDI, and PACT, and was a program chair of CGO2010. Kim is the recipient of numerous awards, including the FEST Distinguished Young Investigator Award for Excellence in Science and Technology, an NSF CAREER Award, a Woodrow Wilson Career Enhancement Fellowship, the Anita Borg Early Career Award, an MIT Technology Review "Top 35 Innovators under 35 Award," and research awards from Microsoft, Google, NSF, and the SRC. Her research has been featured in MIT Technology Review, Computer World, ZDNet, EE Times, and Slashdot.

Bibliographic Information

Publish with us