CDE: Automatically create portable software packages Philip Guo and Dawson Engler Stanford University
2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡ Ubuntu 10.04 �
2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡ Installation fails on both neighboring releases of Ubuntu (9.10 and 10.10)
2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
CDE: Automatic packaging of C ode, D ata, and E nvironment 1. ¡Create ¡package ¡on ¡ 2. ¡Transfer ¡package ¡ 3. ¡Execute ¡so5ware ¡from ¡ your ¡x86-‑Linux ¡computer ¡ within ¡package ¡on ¡any ¡ A ¡package ¡is ¡simply ¡a ¡ modern ¡x86-‑Linux ¡computer ¡ Prepend ¡any ¡set ¡of ¡ directory ¡of ¡files. ¡ commands ¡with ¡‘ cde ’, ¡ Prepend ¡those ¡same ¡ and ¡CDE ¡runs ¡them ¡and ¡ commands ¡with ¡‘ cde-‑exec ’, ¡ automaGcally ¡packages ¡ and ¡CDE ¡runs ¡them ¡naGvely. ¡ up ¡their ¡dependencies. ¡
Ubuntu 10.04 � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
cde cde MLDemos MLDemos ptrace ¡ cde ¡ monitored ¡process ¡ chdir(“foo/”) ¡ open(“/lib/libc.so.6”) ¡ kernel ¡
cde cde MLDemos MLDemos 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡ Ubuntu 10.04 �
cde cde MLDemos MLDemos 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
Debian � Ubuntu 10.04 � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
cde cde-exec -exec MLDemos MLDemos ptrace ¡ cde-‑exec ¡ monitored ¡process ¡ chdir(“foo/”) ¡ open(“/lib/libc.so.6”) ¡ kernel ¡
Linux Mint � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
Mandriva � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
Ubuntu 9.10 � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
openSUSE � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
Debian � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
Fedora � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
CentOS � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
Knoppix � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
Limitations: � Incomplete � Slower (2% - 30%) � x86 x86, Linux 2.6 Linux 2.6 � 2007 ¡ 2008 ¡ 2009 ¡ 2010 ¡ 2011 ¡ 2006 ¡
CDE: Automatic packaging of C ode, D ata, and E nvironment 2500+ downloads � (Google for “cde linux”) � Real-world use cases: � Sharing prototype software � Reproducing research experiments � Running new software on older distros � Deploying computations to cluster/cloud � Distributing class programming assignments �
Recommend
More recommend