Dynamic binary modification : tools, techniques, and applications /
By: Hazelwood, Kim.
Material type: BookSeries: Synthesis digital library of engineering and computer science: ; Synthesis lectures on computer architecture: # 15.Publisher: San Rafael, Calif. (1537 Fourth Street, San Rafael, CA 94901 USA) : Morgan & Claypool, c2011Description: 1 electronic text (xi, 67 p.) : ill., digital file.ISBN: 9781608454594 (electronic bk.).Subject(s): Software maintenance | Application software | Computer programs -- Execution | Dynamic binary modification | Instrumentation | Runtime optimization | Binary translation | Profiling | Debugging | Simulation | Security | User-level analysisDDC classification: 005.16 Online resources: Abstract with links to resource Also available in print.Item type | Current location | Call number | Status | Date due | Barcode | Item holds |
---|---|---|---|---|---|---|
E books | PK Kelkar Library, IIT Kanpur | Available | EBKE324 |
Mode of access: World Wide Web.
System requirements: Adobe Acrobat Reader.
Part of: Synthesis digital library of engineering and computer science.
Series from website.
Includes bibliographical references (p. 59-65).
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.
Abstract freely available; full-text restricted to subscribers or individual document purchasers.
Compendex
INSPEC
Google scholar
Google book search
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.
Also available in print.
Title from PDF t.p. (viewed on April 22, 2011).
There are no comments for this item.