CDE: Automatically create portable software packages Philip Guo and - - PowerPoint PPT Presentation

cde automatically create portable software packages
SMART_READER_LITE
LIVE PREVIEW

CDE: Automatically create portable software packages Philip Guo and - - PowerPoint PPT Presentation

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


slide-1
SLIDE 1

CDE: Automatically create portable software packages

Philip Guo and Dawson Engler Stanford University

slide-2
SLIDE 2
slide-3
SLIDE 3
slide-4
SLIDE 4
slide-5
SLIDE 5

2006 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡ 2011 ¡

Ubuntu 10.04

slide-6
SLIDE 6

2006 ¡ 2009 ¡ 2007 ¡ 2008 ¡

Installation fails on both neighboring releases of Ubuntu (9.10 and 10.10)

2010 ¡ 2011 ¡

slide-7
SLIDE 7

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

slide-8
SLIDE 8
  • 2. ¡Transfer ¡package ¡

A ¡package ¡is ¡simply ¡a ¡ directory ¡of ¡files. ¡

  • 3. ¡Execute ¡so5ware ¡from ¡

within ¡package ¡on ¡any ¡ modern ¡x86-­‑Linux ¡computer ¡ Prepend ¡those ¡same ¡ commands ¡with ¡‘cde-­‑exec’, ¡ and ¡CDE ¡runs ¡them ¡naGvely. ¡

  • 1. ¡Create ¡package ¡on ¡

your ¡x86-­‑Linux ¡computer ¡ Prepend ¡any ¡set ¡of ¡ commands ¡with ¡‘cde’, ¡ and ¡CDE ¡runs ¡them ¡and ¡ automaGcally ¡packages ¡ up ¡their ¡dependencies. ¡

CDE: Automatic packaging of Code, Data, and Environment

slide-9
SLIDE 9

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

Ubuntu 10.04

slide-10
SLIDE 10

cde cde MLDemos MLDemos

kernel ¡ cde ¡ monitored ¡process ¡

ptrace ¡

  • pen(“/lib/libc.so.6”) ¡

chdir(“foo/”) ¡

slide-11
SLIDE 11

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

cde cde MLDemos MLDemos

Ubuntu 10.04

slide-12
SLIDE 12

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

cde cde MLDemos MLDemos

slide-13
SLIDE 13

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

Debian Ubuntu 10.04

slide-14
SLIDE 14

kernel ¡ cde-­‑exec ¡ monitored ¡process ¡

ptrace ¡

  • pen(“/lib/libc.so.6”) ¡

chdir(“foo/”) ¡

cde cde-exec

  • exec MLDemos

MLDemos

slide-15
SLIDE 15

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

Linux Mint

slide-16
SLIDE 16

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

Mandriva

slide-17
SLIDE 17

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

Ubuntu 9.10

slide-18
SLIDE 18

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

  • penSUSE
slide-19
SLIDE 19

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

Debian

slide-20
SLIDE 20

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

Fedora

slide-21
SLIDE 21

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

CentOS

slide-22
SLIDE 22

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

Knoppix

slide-23
SLIDE 23

2006 ¡ 2011 ¡ 2009 ¡ 2007 ¡ 2008 ¡ 2010 ¡

Limitations:

Incomplete Slower (2% - 30%) x86x86, Linux 2.6Linux 2.6

slide-24
SLIDE 24
slide-25
SLIDE 25

CDE: Automatic packaging of Code, Data, and Environment

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