My Library

University LibraryCatalogue

For faster,
Use Lean
Get it now
Don't show me again
Limit search to items available for borrowing or consultation
Result Page: Previous Next
Can't find that book? Try BONUS+
Look for full text

Search Discovery

Search CARM Centre Catalogue

Search Trove

Add record to RefWorks

Cover Art
Author Hazelwood, Kim.

Title Dynamic binary modification : tools, techniques, and applications / Kim Hazelwood.

Published San Rafael, Calif. (1537 Fourth Street, San Rafael, CA 94901 USA) : Morgan & Claypool, [2011]


Location Call No. Status
Physical description 1 electronic text (xi, 67 pages) : illustrations, digital file.
Series Synthesis lectures on computer architecture, 1935-3243 ; # 15.
Synthesis digital library of engineering and computer science.
Synthesis lectures in computer architecture. 1935-3243 ; # 15.
Notes Part of: Synthesis digital library of engineering and computer science.
Series from website.
Bibliography Includes bibliographical references (pages 59-65).
Contents Acknowledgments -- 1. Dynamic binary modification: overview -- Utility -- Functionality -- System performance -- High-level summary --
2. Using a dynamic binary modifier -- Heavyweight vs. lightweight control -- JIT-mode execution -- Probe-mode execution -- Persistent binary modification -- Launching the system -- Complete process control -- Attaching to an existing process -- Programmable instrumentation -- Platform-specific behaviors -- End-user optimizations -- Debugging your plug-in tool --
3. Program analysis and debugging -- Program analysis examples -- Parallel program analysis -- Deterministic replay -- Customizable debugging --
4. Active program modification -- Fine-grained instruction modification -- Function replacement -- Dynamic optimization -- Sandboxing and security enforcement --
5. Architectural exploration -- Simulation -- Trace generation -- Functional cache simulation -- Functional branch prediction simulation -- Timing simulation -- Emulation -- Supporting new instructions -- Masking hardware flaws -- Binary translation -- Design-space exploration --
6. Advanced system internals -- Modes of execution -- Modified copy on demand -- Modification in place -- A shared address space -- Acquiring control -- Maintaining control: JIT compilation -- Storing modified code: the code cache -- Forming traces of modified code -- Code cache eviction and replacement -- Code cache introspection -- Handling self-modifying code -- The emulator -- Multithreaded program support -- Thread-shared code caches -- Generational cache replacement -- Windows execution support -- Masking overhead with parallelism -- Remaining challenges --
7. Historical perspectives --
8. Summary and observations -- Bibliography -- Author's biography.
Restrictions Abstract freely available; full-text restricted to subscribers or individual document purchasers.
Summary 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.
Other formats Also available in print.
System notes Mode of access: World Wide Web.
System requirements: Adobe Acrobat Reader.
Notes Title from PDF t.p. (viewed on April 22, 2011).
Subject Software maintenance.
Application software.
Computer programs -- Execution.
Dynamic binary modification.
Runtime optimization.
Binary translation.
User-level analysis.
Standard Number 10.2200/S00345ED1V01Y201104CAC015
ISBN 9781608454594 (electronic bk.)
9781608454587 (paperback)