Record:   Prev Next
作者 Hazelwood, Kim
書名 Dynamic binary modification [electronic resource] : tools, techniques, and applications / Kim Hazelwood
出版項 San Rafael, Calif. (1537 Fourth Street, San Rafael, CA 94901 USA) : Morgan & Claypool, c2011
國際標準書號 9781608454594 (electronic bk.)
9781608454587 (pbk.)
國際標準號碼 10.2200/S00345ED1V01Y201104CAC015 doi
book jacket
說明 1 electronic text (xi, 67 p.) : ill., digital file
系列 Synthesis lectures on computer architecture, 1935-3243 ; # 15
Synthesis digital library of engineering and computer science
Synthesis lectures on computer architecture, 1935-3243 ; # 15
附註 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
Google scholar
Google book search
Mode of access: World Wide Web
System requirements: Adobe Acrobat Reader
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
主題 Software maintenance
Application software
Computer programs -- Execution
Dynamic binary modification
Runtime optimization
Binary translation
User-level analysis
Record:   Prev Next