Thread-saft dynamic binary translation using transactional memory

Subscribers:
344,000
Published on ● Video Link: https://www.youtube.com/watch?v=wzVwDO713TM



Duration: 53:02
131 views
1


Dynamic binary translation (DBT) is a runtime instrumentation technique commonly used to support profiling, optimization, secure execution, and bug detection tools for application binaries. However, DBT frameworks may incorrectly handle multithreaded programs due to races involving updates to the application data and the corresponding metadata maintained by the DBT. Existing DBT frameworks handle this issue by serializing threads, disallowing multithreaded programs, or requiring explicit use of locks. This paper presents a practical solution for correct execution of multithreaded programs within DBT frameworks. To eliminate races involving metadata, we propose the use of transactional memory (TM). The DBT uses memory transactions to encapsulate the data and metadata accesses in a trace, within one atomic block. This approach guarantees correct execution of concurrent threads of the translated program, as TM mechanisms detect and correct races. To demonstrate this approach, we implemented a DBT-based tool for secure execution of x86 binaries using dynamic information flow tracking. This is the first such framework that correctly handles multithreaded binaries without serialization. We show that the use of software transactions in the DBT leads to a runtime overhead of 40\.




Other Videos By Microsoft Research


2016-09-06Precision-Integrated Scalable Monitoring
2016-09-06Toward an Open Analytics Environment
2016-09-06In-Car Speech User Interfaces and their Effects on Driving Performance
2016-09-06Microcosm: E. coli and the New Science of Life
2016-09-06Dependable and Sustainable Cyber-Physical Computing - An Overview of IMPACT Lab's Research
2016-09-06General Theorem Proving for Satisfiability Modulo Theories: An Overview
2016-09-06Real-Time Concurrent Garbage Collection
2016-09-06Virtual Earth Summit - Session 2
2016-09-06Concept Lexicon Construction and Affective Analysis: From Photos to MTV
2016-09-06Cloud Computing for e-Science
2016-09-06Thread-saft dynamic binary translation using transactional memory
2016-09-06Scheduling for multi-carrier wireless systems
2016-09-06Reachability Under Uncertainty & Bayesian Inverse Reinforcement Learning
2016-09-06Exploring large social networks with matrix-based representations
2016-09-06Defining and Enforcing Privacy in Data Publishing
2016-09-06Zero Overhead Verification of Software Programs & On Range Search in Distributed Sensor Networks
2016-09-06XNA Game Studio Workshop - Session One
2016-09-06Reconfigurable Computing: Architectural and Design Tool Challenges
2016-09-06Knowledge sharing and awareness in collaborative computing: Experimental research methods
2016-09-06Multimodal Processing of Human Behavior in Intelligent Instrumented Spaces
2016-09-06Energy Based Models: From Relational Regression to Similarity Metric Learning



Tags:
microsoft research