Google Tech Talk (more info below) February 11, 2011 Presented by Philip Guo. ABSTRACT It can be painfully difficult to take software that runs on one person’s machine and get it to run on another machine. Online forums and mailing lists are filled with discussions of users’ troubles with compiling, installing, and configuring software and their myriad of dependencies. To eliminate this dependency problem, we created a tool called CDE that uses system call interposition to monitor the execution of x86-Linux programs and package up the Code, Data, and Environment required to run them on other x86-Linux machines, without any installation or configuration. CDE is easy to use: Simply prepend any Linux command (or series of commands) with ‘cde’, and CDE will execute that command, monitor its actions using ptrace, and copy all files it accesses (eg, executables, libraries, plug-ins, scripts, configuration/data files) into a self-contained package. Now you can transfer that package to another Linux machine and run that exact same command without installing anything. In short, if you can run a set of Linux commands on your x86 machine, then CDE enables others to run it on theirs. People in both academia and industry have used CDE to distribute portable software, demo research prototypes, make their scientific experiments reproducible, run software natively on older Linux distros, and quickly deploy experiments to compute clusters. CDE is free and open-source, available here: www …
Link:
CDE: Using System Call Interposition to Automatically Create Portable Software Packages