Dapper - Cross-ISA Process Snapshot Rewriting

Dapper transforms a live process's state for different purposes. For example, Dapper supports live process migration of natively compiled Linux binaries across servers with CPUs of different architectures. It also supports re-randomizing the stack and registers of a process to improve security.

Dinosaur

Overview of Dapper

Dapper was built on top of CRIU to dump a running process and then transform the CRIU images to support restoration on servers of a different architecture. Currently, Dapper supports process migration on x86-64 and aarch64 CPUs.You can find more information about Dapper in the following paper:

  • Dapper: A Lightweight and Extensible Framework for Live Program State Rewriting.
    A. Bapat, J. Shastri, X. Wang, A. Sundarasamy, and B. Ravindran
    to appear in IEEE ICDCS'24 [Paper] [Code]
Dapper's code is available on our GitHub as open-source software. You can also find a Demo of how Dapper works.
 
Contact:

Binoy Ravindran, Virginia Tech,  This email address is being protected from spambots. You need JavaScript enabled to view it.
Xiaoguang Wang, University of Illinois Chicago, This email address is being protected from spambots. You need JavaScript enabled to view it.


 
Dapper is an open-source project of the Systems Software Research Group at Virginia Tech and the University of Illinois Chicago.
 
This work is supported in part by the US Office of Naval Research (ONR) under grants N00014-18-1-2022, N00014-19-1-2493, and N0001422-1-2672 and by the US National Science Foundation (NSF) under grant CNS 2127491. Any opinions, findings, conclusions, or recommendations expressed in this site are those of the author(s) and do not necessarily reflect the views of ONR or NSF.