Skip to main navigation Skip to search Skip to main content

Rabit: A new framework for runtime emulation and binary translation

  • SUNY Buffalo

Research output: Contribution to journalConference articlepeer-review

Abstract

Binary translation has been widely used as object code migration across different architectures. Most current works are targeted towards running an existing (old architecture) binary version of a complex application on a newer architecture and so availability of resources is not a problem. In this paper we propose a technique called RABIT for emulating a newer architecture's binary on an older one. RABIT will allow the consumers to emulate the applications developed for newer hardware on their older machines by incurring some performance trade-offs. This way the needy consumers can take advantage of the newer software features on their existing machines before they decide to up-grade them to later models. In situations where the newer hardware is in place, our technique can be used to run applications redundantly on the older machine for dependability analysis. It also provides the CPU architects with an instruction-level simulator to test the design and stability of a new CPU before the new hardware is actually in place. RABIT's design consists of a translator, an interpreter and a set of operating system services. To deal with the less amount of resources like registers in the older architecture as compared to the newer ones, we present a new register allocation algorithm. The feasibility of the technique is established by simulating RABIT for its performance.

Original languageEnglish
Pages (from-to)213-220
Number of pages8
JournalProceedings of the IEEE Annual Simulation Symposium
StatePublished - 2004
EventProceedings - 37th Annual Simulation Symposium, ANSS-37 2004 - Arlington, VA, United States
Duration: Apr 18 2004Apr 22 2004

Fingerprint

Dive into the research topics of 'Rabit: A new framework for runtime emulation and binary translation'. Together they form a unique fingerprint.

Cite this