Strata: A Software Dynamic Translation Infrastructure

  • Authors:
  • Kevin Scott;Jack Davidson

  • Affiliations:
  • -;-

  • Venue:
  • Strata: A Software Dynamic Translation Infrastructure
  • Year:
  • 2001

Quantified Score

Hi-index 0.01

Visualization

Abstract

Software dynamic translation is the alteration of a running program to achieve a specific objective. For example, a dynamic optimizer uses software dynamic translation to modify a running program with the objective of making the program run faster. In addition to its demonstrated utility in dynamic optimizers, software dynamic translation also shows promise for producing applications that are adaptable, secure, and robust. In this paper, we describe the design and implementation of an extensible, retargetable infrastructure to facilitate research in applications of software dynamic translation technology. The infrastructure, called Strata, provides the software dynamic translator implementor with a virtual machine model that can be extended to implement specific software dynamic translation functionality. To illustrate the use of Strata to build client applications, the paper describes the Strata implementation of a two dynamic safety checkers and a dynamic instruction scheduler.