Free/Open Source Software: scientific and technological challenges for complex systems engineering

Size: px
Start display at page:

Download "Free/Open Source Software: scientific and technological challenges for complex systems engineering"

Transcription

1 Free/Open Source Software: scientific and technological challenges for complex systems engineering Roberto Di Cosmo Laboratoire Preuves Programmes et Systèmes Université Paris Diderot Paris 7 Paris, France and INRIA May 17th 2010 Journées Inria-Industrie, Toulouse Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 1 / 38

2 Outline 1 The Open Source Infrastructure and its Complexity 2 Coccinelle 3 Mancoosi 4 IRILL: research and innovation on Free Software Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 2 / 38

3 Outline 1 The Open Source Infrastructure and its Complexity 2 Coccinelle 3 Mancoosi 4 IRILL: research and innovation on Free Software Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 3 / 38

4 Reminder: FOSS free (as in free beer, or gratuit) software which has not to be payed (today) free (as in free speech, or libre) software granting 4 freedoms to its users: 1 0 freedom to use the software 1 freedom to study the source code of the software and to adapt it to user needs 2 freedom to distribute software copies 3 freedom to distribute modified software copies two points of view: the freedom one as outlined above ( free software ), the technical one pivoting around source code availability ( open source ) 1 there are of course also obligations, which vary according to the license: GPL, BSD, Mozilla, MIT/X, AGPL,... Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 4 / 38

5 Challenges and opportunities FOSS is radically changing the way software is conceived, developed, maintained, deployed, tested, proven, marketed and sold. Reminder: economics : the study of how society chooses to allocate scarce resources to produce, exchange, and consume goods and services. Ruffin, Gregory, Principles of Economics, 1990 proprietary software Without scarcity, there is no economy. based on an artificial scarcity of copies of a piece of software... free software removes the scarcity of copies, exposing the other scarce resources: know-how, infrastructure, process, industrialization, customization skills etc. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 5 / 38

6 Challenges and opportunities FOSS is radically changing the way software is conceived, developed, maintained, deployed, tested, proven, marketed and sold. Reminder: economics : the study of how society chooses to allocate scarce resources to produce, exchange, and consume goods and services. Ruffin, Gregory, Principles of Economics, 1990 proprietary software Without scarcity, there is no economy. based on an artificial scarcity of copies of a piece of software... free software removes the scarcity of copies, exposing the other scarce resources: know-how, infrastructure, process, industrialization, customization skills etc. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 5 / 38

7 Challenges and opportunities FOSS is radically changing the way software is conceived, developed, maintained, deployed, tested, proven, marketed and sold. Reminder: economics : the study of how society chooses to allocate scarce resources to produce, exchange, and consume goods and services. Ruffin, Gregory, Principles of Economics, 1990 proprietary software Without scarcity, there is no economy. based on an artificial scarcity of copies of a piece of software... free software removes the scarcity of copies, exposing the other scarce resources: know-how, infrastructure, process, industrialization, customization skills etc. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 5 / 38

8 Challenges and opportunities FOSS is radically changing the way software is conceived, developed, maintained, deployed, tested, proven, marketed and sold. Reminder: economics : the study of how society chooses to allocate scarce resources to produce, exchange, and consume goods and services. Ruffin, Gregory, Principles of Economics, 1990 proprietary software Without scarcity, there is no economy. based on an artificial scarcity of copies of a piece of software... free software removes the scarcity of copies, exposing the other scarce resources: know-how, infrastructure, process, industrialization, customization skills etc. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 5 / 38

9 Challenges and opportunities FOSS is radically changing the way software is conceived, developed, maintained, deployed, tested, proven, marketed and sold. Reminder: economics : the study of how society chooses to allocate scarce resources to produce, exchange, and consume goods and services. Ruffin, Gregory, Principles of Economics, 1990 proprietary software Without scarcity, there is no economy. based on an artificial scarcity of copies of a piece of software... free software removes the scarcity of copies, exposing the other scarce resources: know-how, infrastructure, process, industrialization, customization skills etc. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 5 / 38

10 Some numbers that say it all IT Market World: 550 billions euros in 2007 France: 30 billions euros in 2007 FLOSSImpact: LL = 30% of the world IT market in 2012 Gartner: Mark Driver, sept in 2011, 80% of commercial software contain Open Source... 49,7% of critical software come from Open Source France PAC 2008 study: 1st country of OCDE for FOSS LL = 3,6% of French IT market (1105Me, +32%!) OPIIEC 2008 study: LL strategic, but we miss education in Computer Science and Free Software Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 6 / 38

11 Complex Software Systems Complex software systems are built from large number of components, which have to be deployed together; the most challenging are those that change frequently. The free/open source software (FOSS) infrastructure is a complex system archetype: no central authority / software architect quick (release early, release often) and distributed development strong component interdependency large code bases freely accessible (for developers, students, researchers,... ) Complexity arises at different levels... Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 7 / 38

12 FOSS: complex software... [ kernel mapper project ] Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 8 / 38

13 ... with superlinear growth [ Robles et al. ] Bad news: any change in core system API propagates in thousands of different call sites!good news: the Coccinelle project is building novel abstractions to master the problem. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 9 / 38

14 ... with superlinear growth [ Robles et al. ] Bad news: any change in core system API propagates in thousands of different call sites!good news: the Coccinelle project is building novel abstractions to master the problem. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 9 / 38

15 FOSS: complex interdependencies... Components Proposed 1968 by Douglas McIlroy as a remedy to the software crisis. Some Characteristics of Components: 1 Multiple-use 2 Encapsulated 3 A unit of independent deployment and versioning 4 Composable with other components Problem: Interaction between (3) and (4). GNU/Linux distributions are among the largest component based systems today! Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 10 / 38

16 FOSS: complex interdependencies... Components Proposed 1968 by Douglas McIlroy as a remedy to the software crisis. Some Characteristics of Components: 1 Multiple-use 2 Encapsulated 3 A unit of independent deployment and versioning 4 Composable with other components Problem: Interaction between (3) and (4). GNU/Linux distributions are among the largest component based systems today! Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 10 / 38

17 FOSS: complex interdependencies... Components Proposed 1968 by Douglas McIlroy as a remedy to the software crisis. Some Characteristics of Components: 1 Multiple-use 2 Encapsulated 3 A unit of independent deployment and versioning 4 Composable with other components Problem: Interaction between (3) and (4). GNU/Linux distributions are among the largest component based systems today! Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 10 / 38

18 Inter-package relationships are complex... [ EDOS project ] Package: gnubg Version: Depends: gnubg-data, ttf-bitstream-vera, libartsc0 (>= ),..., libgl1-mesa-glx libgl1,... Conflicts:... And this changes everyday! Bad news: pulling our component out of the spaghetti dish is an NP-complete problem! Good news: the EDOS and Mancoosi projects have attacked the core of the dependency resolution phase, using formal methods to formalize and address them. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 11 / 38

19 Inter-package relationships are complex... [ EDOS project ] Package: gnubg Version: Depends: gnubg-data, ttf-bitstream-vera, libartsc0 (>= ),..., libgl1-mesa-glx libgl1,... Conflicts:... And this changes everyday! Bad news: pulling our component out of the spaghetti dish is an NP-complete problem! Good news: the EDOS and Mancoosi projects have attacked the core of the dependency resolution phase, using formal methods to formalize and address them. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 11 / 38

20 Complex software in industry, ten years from now Free Software is making software artefacts transparent: no artificial barriers among architectural layers... theoretical possibility to follow the flow of computation from the more abstract layers down to the moving bits in the hardware new levels of quality assurance and certification can be expected this is not easy: we need new theory and new tools it will take time, effort and good cooperation between industrial partners, higher education and research actors Industry need to invest in Free Software fundamental research: the sooner, the better. In the air&space Industry, you (should) know all this quite well. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 12 / 38

21 Complex software in industry, ten years from now Free Software is making software artefacts transparent: no artificial barriers among architectural layers... theoretical possibility to follow the flow of computation from the more abstract layers down to the moving bits in the hardware new levels of quality assurance and certification can be expected this is not easy: we need new theory and new tools it will take time, effort and good cooperation between industrial partners, higher education and research actors Industry need to invest in Free Software fundamental research: the sooner, the better. In the air&space Industry, you (should) know all this quite well. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 12 / 38

22 Complex software in industry, ten years from now Free Software is making software artefacts transparent: no artificial barriers among architectural layers... theoretical possibility to follow the flow of computation from the more abstract layers down to the moving bits in the hardware new levels of quality assurance and certification can be expected this is not easy: we need new theory and new tools it will take time, effort and good cooperation between industrial partners, higher education and research actors Industry need to invest in Free Software fundamental research: the sooner, the better. In the air&space Industry, you (should) know all this quite well. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 12 / 38

23 Complex software in industry, ten years from now Free Software is making software artefacts transparent: no artificial barriers among architectural layers... theoretical possibility to follow the flow of computation from the more abstract layers down to the moving bits in the hardware new levels of quality assurance and certification can be expected this is not easy: we need new theory and new tools it will take time, effort and good cooperation between industrial partners, higher education and research actors Industry need to invest in Free Software fundamental research: the sooner, the better. In the air&space Industry, you (should) know all this quite well. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 12 / 38

24 Complex software in industry, ten years from now Free Software is making software artefacts transparent: no artificial barriers among architectural layers... theoretical possibility to follow the flow of computation from the more abstract layers down to the moving bits in the hardware new levels of quality assurance and certification can be expected this is not easy: we need new theory and new tools it will take time, effort and good cooperation between industrial partners, higher education and research actors Industry need to invest in Free Software fundamental research: the sooner, the better. In the air&space Industry, you (should) know all this quite well. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 12 / 38

25 Complex software in industry, ten years from now Free Software is making software artefacts transparent: no artificial barriers among architectural layers... theoretical possibility to follow the flow of computation from the more abstract layers down to the moving bits in the hardware new levels of quality assurance and certification can be expected this is not easy: we need new theory and new tools it will take time, effort and good cooperation between industrial partners, higher education and research actors Industry need to invest in Free Software fundamental research: the sooner, the better. In the air&space Industry, you (should) know all this quite well. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 12 / 38

26 Complex software in industry, ten years from now Free Software is making software artefacts transparent: no artificial barriers among architectural layers... theoretical possibility to follow the flow of computation from the more abstract layers down to the moving bits in the hardware new levels of quality assurance and certification can be expected this is not easy: we need new theory and new tools it will take time, effort and good cooperation between industrial partners, higher education and research actors Industry need to invest in Free Software fundamental research: the sooner, the better. In the air&space Industry, you (should) know all this quite well. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 12 / 38

27 Two concrete examples of what can be done We will now focus on a short highlight of two ongoing research actions at each of the two levels of complexity: managing complexity for a big software component : the Coccinelle project and the Linux kernel managing complexity for a big software component collection : the Mancoosi project and the GNU/Linux distributions Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 13 / 38

28 Outline 1 The Open Source Infrastructure and its Complexity 2 Coccinelle 3 Mancoosi 4 IRILL: research and innovation on Free Software Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 14 / 38

29 Coccinelle: flexible abstractions to master collateral evolutions Thanks to Gilles Muller and Julia Lawall for the following slides. See for more information. The collateral evolution problem: Library functions change. Client code must be adapted. Change a function name, add an argument, etc. Linux context: Many libraries: usb, net, etc. Very many clients, including outside the Linux source tree. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 15 / 38

30 Coccinelle: flexible abstractions to master collateral evolutions Thanks to Gilles Muller and Julia Lawall for the following slides. See for more information. The collateral evolution problem: Library functions change. Client code must be adapted. Change a function name, add an argument, etc. Linux context: Many libraries: usb, net, etc. Very many clients, including outside the Linux source tree. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 15 / 38

31 An example Evolution: A new function: kzalloc = Collateral evolution: Merge kmalloc and memset into kzalloc fh = kmalloc(sizeof(struct zoran fh), GFP_KERNEL); if (!fh) { dprintk(1, KERN_ERR "%s: zoran open(): allocation of zoran fh failed\n", ZR_DEVNAME(zr)); return -ENOMEM; } memset(fh, 0, sizeof(struct zoran fh)); Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 16 / 38

32 An example Evolution: A new function: kzalloc = Collateral evolution: Merge kmalloc and memset into kzalloc fh = kzalloc(sizeof(struct zoran fh), GFP_KERNEL); if (!fh) { dprintk(1, KERN_ERR "%s: zoran open(): allocation of zoran fh failed\n", ZR_DEVNAME(zr)); return -ENOMEM; } memset(fh, 0, sizeof(struct zoran fh)); Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 17 / 38

33 A simple semantic patch Abstract away the details of a expression x; expression - x = kmalloc(e1,e2); + x = kzalloc(e1,e2);... - memset(x, 0, E1); A single snippet... updates 355/564 files! Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 18 / 38

34 Coccinelle architecture Semantic patch C code AX(A[(ϕ 1 ϕ 2 )Uϕ 3 ]...) CTL formula Control Flow Graph Model checking algorithm Identification of the nodes to be modified Modification of the identified code Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 19 / 38

35 Practical results Collateral evolutions Semantic patches for over 60 collateral evolutions. Applied to over 5800 Linux files from various versions, with a success rate of 100% on 93% of the files. Bug finding Generic bug types: Null dereference, initialization of unused variables, etc. Bugs in the use of Linux APIs: Incoherent error checking, memory leaks, etc. Over 450 patches created using Coccinelle accepted into Linux Starting to be used by other Linux developers Probable bugs found in gcc, postgresql, vim, amsn, pidgin, mplayer Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 20 / 38

36 Outline 1 The Open Source Infrastructure and its Complexity 2 Coccinelle 3 Mancoosi 4 IRILL: research and innovation on Free Software Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 21 / 38

37 Mancoosi: upgrading GNU/Linux distributions How do you compose a system by selecting components from dozens of thousands developend independently? A new idea from FLOSS: GNU/Linux distributions as intermediaries between FOSS projects and their users Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 22 / 38

38 Mancoosi: upgrading GNU/Linux distributions How do you compose a system by selecting components from dozens of thousands developend independently? A new idea from FLOSS: GNU/Linux distributions as intermediaries between FOSS projects and their users Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 22 / 38

39 Distributions: a somehow successful idea... Central notion in distributions (to abstract over the complex underlying infrastructure): package, together with package management software... Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 23 / 38

40 Packages, metadata, installation Package = { some files some scripts metadata Identification Inter-package rel. Dependencies Conflicts Feature declarations Other Package maintainer Textual descriptions... Example Package: aterm Version: Section: x11 Installed-Size: 280 Maintainer: Göran Weinholt... Architecture: i386 Depends: libc6 (>= ds1-4), libice6 xlibs (>> 4.1.0),... Conflicts: suidmanager (<< 0.50) Provides: x-terminal-emulator... a package is the elemental component of modern distribution systems (not GNU/Linux specific) a working system is deployed by installing a package set ( 1000/2000 for GNU/Linux distro) Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 24 / 38

41 Installation process Phase User request Constraint resolution Package retrieval Trace # apt-get install aterm Reading package lists... Done Building dependency tree... Done The following extra packages will be installed: libafterimage0 The following NEW packages will be installed aterm libafterimage0 0 upgraded, 2 newly installed, 0 to remove and 1786 not upgraded. Need to get 386kB of archives. After unpacking 807kB of additional disk space will be used. Do you want to continue [Y/n]? Y Get: 1 testing/main libafterimage [301kB] Get: 2 testing/main aterm [84.4kB] Fetched 386kB in 0s (410kB/s) Pre-configuration { Selecting previously deselected package libafterimage0. (Reading database files and directories currently installed.) Unpacking libafterimage0 (from.../libafterimage0_ _i386.deb)... Unpacking Selecting previously deselected package aterm. Unpacking aterm (from.../aterm_ _i386.deb)... { Setting up libafterimage0 ( )... Configuration Setting up aterm ( )... each phase can fail (it actually happens quite often... ) efforts should be made to identify errors as early as possible Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 25 / 38

42 Installation process Phase User request Constraint resolution Package retrieval Trace # apt-get install aterm Reading package lists... Done Building dependency tree... Done The following extra packages will be installed: libafterimage0 The following NEW packages will be installed aterm libafterimage0 0 upgraded, 2 newly installed, 0 to remove and 1786 not upgraded. Need to get 386kB of archives. After unpacking 807kB of additional disk space will be used. Do you want to continue [Y/n]? Y Get: 1 testing/main libafterimage [301kB] Get: 2 testing/main aterm [84.4kB] Fetched 386kB in 0s (410kB/s) Pre-configuration { Selecting previously deselected package libafterimage0. (Reading database files and directories currently installed.) Unpacking libafterimage0 (from.../libafterimage0_ _i386.deb)... Unpacking Selecting previously deselected package aterm. Unpacking aterm (from.../aterm_ _i386.deb)... { Setting up libafterimage0 ( )... Configuration Setting up aterm ( )... each phase can fail (it actually happens quite often... ) efforts should be made to identify errors as early as possible Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 25 / 38

43 Installation woes # sudo apt-get install debhelper Reading Package Lists... Done Building Dependency Tree... Done The following extra packages will be installed: armagetron armagetron-common autoconf bonobo-activation codebreaker debconf debconf-i18n debconf-utils dialog esound-common fb-music-high fontconfig frozen-bubble-data grepmail gv intltool-debian libaiksaurus-data libaiksaurus0c102 libatk1.0-0 libatk1.0-dev libbonobo-activation4 libbonobo2-0 libbonobo2-common libdb3 libdbd-mysql-perl libdbi-perl libeel2-data libesd0... The following packages will be REMOVED: autoconf2.13 frozen-bubble frozen-bubble-lib gconf2 gnomemeeting itk3.1-dev libbonoboui2-0 libbonoboui2-common libdigest-md5-perl libforms0.89 libgconf2-4 libgnome2-0 libgnome2-common libgnomeui-0 libgnomevfs2-0 libgnomevfs2-common libgtk1.2-dev libgtk2.0-0png3 libgtk2.0-dev libmime-base64-perl libpango1.0-dev libsdl-mixer1.2-dev libsdl-perl libsdl-ttf1.2-dev libsdl1.2-dev libsmpeg-dev libstorable-perl nautilus tk8.3-dev tktable-dev x-window-system x-window-system-core xaw3dg-dev xlib6g xlib6g-dev xlibmesa-dev xlibmesa3 xlibosmesa3 xlibs-dev xlibs-pic xpdf xpdf-reader The following NEW packages will be installed: armagetron-common debconf-i18n fb-music-high fontconfig intltool-debian libaiksaurus-data libaiksaurus0c102 libeel2-data libfilehandle-unget-perl libfontconfig1 libforms1 libgdbm3 libgnutls7 libgsf-1 libice-dev libice6 libidl0 liblzo1 libmagick5.5.7 libmail-mbox-messageparser-perl libmysqlclient12 libncursesw5 libnet-daemon-perl libnewt0.51 libpaper1 libplrpc-perl libsdl-console packages upgraded, 80 newly installed, 42 to remove and 858 not upgraded. Need to get 67.1MB of archives. After unpacking 26.9MB will be used. Do you want to continue? [Y/n] Abort. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 26 / 38

44 Installation woes # sudo apt-get install debhelper Reading Package Lists... Done Building Dependency Tree... Done The following extra packages will be installed: armagetron armagetron-common autoconf bonobo-activation codebreaker debconf debconf-i18n debconf-utils dialog esound-common fb-music-high fontconfig frozen-bubble-data grepmail gv intltool-debian libaiksaurus-data libaiksaurus0c102 libatk1.0-0 libatk1.0-dev libbonobo-activation4 libbonobo2-0 libbonobo2-common libdb3 libdbd-mysql-perl libdbi-perl libeel2-data libesd0... The following packages will be REMOVED: autoconf2.13 frozen-bubble frozen-bubble-lib gconf2 gnomemeeting itk3.1-dev libbonoboui2-0 libbonoboui2-common libdigest-md5-perl libforms0.89 libgconf2-4 libgnome2-0 libgnome2-common libgnomeui-0 libgnomevfs2-0 libgnomevfs2-common libgtk1.2-dev libgtk2.0-0png3 libgtk2.0-dev libmime-base64-perl libpango1.0-dev libsdl-mixer1.2-dev libsdl-perl libsdl-ttf1.2-dev libsdl1.2-dev libsmpeg-dev libstorable-perl nautilus tk8.3-dev tktable-dev x-window-system x-window-system-core xaw3dg-dev xlib6g xlib6g-dev xlibmesa-dev xlibmesa3 xlibosmesa3 xlibs-dev xlibs-pic xpdf xpdf-reader The following NEW packages will be installed: armagetron-common debconf-i18n fb-music-high fontconfig intltool-debian libaiksaurus-data libaiksaurus0c102 libeel2-data libfilehandle-unget-perl libfontconfig1 libforms1 libgdbm3 libgnutls7 libgsf-1 libice-dev libice6 libidl0 liblzo1 libmagick5.5.7 libmail-mbox-messageparser-perl libmysqlclient12 libncursesw5 libnet-daemon-perl libnewt0.51 libpaper1 libplrpc-perl libsdl-console packages upgraded, 80 newly installed, 42 to remove and 858 not upgraded. Need to get 67.1MB of archives. After unpacking 26.9MB will be used. Do you want to continue? [Y/n] Abort. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 26 / 38

45 Installation woes # sudo apt-get install debhelper Reading Package Lists... Done Building Dependency Tree... Done The following extra packages will be installed: armagetron armagetron-common autoconf bonobo-activation codebreaker debconf debconf-i18n debconf-utils dialog esound-common fb-music-high fontconfig frozen-bubble-data grepmail gv intltool-debian libaiksaurus-data libaiksaurus0c102 libatk1.0-0 libatk1.0-dev libbonobo-activation4 libbonobo2-0 libbonobo2-common libdb3 libdbd-mysql-perl libdbi-perl libeel2-data libesd0... The following packages will be REMOVED: autoconf2.13 frozen-bubble frozen-bubble-lib gconf2 gnomemeeting itk3.1-dev libbonoboui2-0 libbonoboui2-common libdigest-md5-perl libforms0.89 libgconf2-4 libgnome2-0 libgnome2-common libgnomeui-0 libgnomevfs2-0 libgnomevfs2-common libgtk1.2-dev libgtk2.0-0png3 libgtk2.0-dev libmime-base64-perl libpango1.0-dev libsdl-mixer1.2-dev libsdl-perl libsdl-ttf1.2-dev libsdl1.2-dev libsmpeg-dev libstorable-perl nautilus tk8.3-dev tktable-dev x-window-system x-window-system-core xaw3dg-dev xlib6g xlib6g-dev xlibmesa-dev xlibmesa3 xlibosmesa3 xlibs-dev xlibs-pic xpdf xpdf-reader The following NEW packages will be installed: armagetron-common debconf-i18n fb-music-high fontconfig intltool-debian libaiksaurus-data libaiksaurus0c102 libeel2-data libfilehandle-unget-perl libfontconfig1 libforms1 libgdbm3 libgnutls7 libgsf-1 libice-dev libice6 libidl0 liblzo1 libmagick5.5.7 libmail-mbox-messageparser-perl libmysqlclient12 libncursesw5 libnet-daemon-perl libnewt0.51 libpaper1 libplrpc-perl libsdl-console packages upgraded, 80 newly installed, 42 to remove and 858 not upgraded. Need to get 67.1MB of archives. After unpacking 26.9MB will be used. Do you want to continue? [Y/n] Abort. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 26 / 38

46 Installation woes # sudo apt-get install debhelper Reading Package Lists... Done Building Dependency Tree... Done The following extra packages will be installed: armagetron armagetron-common autoconf bonobo-activation codebreaker debconf debconf-i18n debconf-utils dialog esound-common fb-music-high fontconfig frozen-bubble-data grepmail gv intltool-debian libaiksaurus-data libaiksaurus0c102 libatk1.0-0 libatk1.0-dev libbonobo-activation4 libbonobo2-0 libbonobo2-common libdb3 libdbd-mysql-perl libdbi-perl libeel2-data libesd0... The following packages will be REMOVED: autoconf2.13 frozen-bubble frozen-bubble-lib gconf2 gnomemeeting itk3.1-dev libbonoboui2-0 libbonoboui2-common libdigest-md5-perl libforms0.89 libgconf2-4 libgnome2-0 libgnome2-common libgnomeui-0 libgnomevfs2-0 libgnomevfs2-common libgtk1.2-dev libgtk2.0-0png3 libgtk2.0-dev libmime-base64-perl libpango1.0-dev libsdl-mixer1.2-dev libsdl-perl libsdl-ttf1.2-dev libsdl1.2-dev libsmpeg-dev libstorable-perl nautilus tk8.3-dev tktable-dev x-window-system x-window-system-core xaw3dg-dev xlib6g xlib6g-dev xlibmesa-dev xlibmesa3 xlibosmesa3 xlibs-dev xlibs-pic xpdf xpdf-reader The following NEW packages will be installed: armagetron-common debconf-i18n fb-music-high fontconfig intltool-debian libaiksaurus-data libaiksaurus0c102 libeel2-data libfilehandle-unget-perl libfontconfig1 libforms1 libgdbm3 libgnutls7 libgsf-1 libice-dev libice6 libidl0 liblzo1 libmagick5.5.7 libmail-mbox-messageparser-perl libmysqlclient12 libncursesw5 libnet-daemon-perl libnewt0.51 libpaper1 libplrpc-perl libsdl-console packages upgraded, 80 newly installed, 42 to remove and 858 not upgraded. Need to get 67.1MB of archives. After unpacking 26.9MB will be used. Do you want to continue? [Y/n] Abort. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 26 / 38

47 Installation woes # sudo apt-get install debhelper Reading Package Lists... Done Building Dependency Tree... Done The following extra packages will be installed: armagetron armagetron-common autoconf bonobo-activation codebreaker debconf debconf-i18n debconf-utils dialog esound-common fb-music-high fontconfig frozen-bubble-data grepmail gv intltool-debian libaiksaurus-data libaiksaurus0c102 libatk1.0-0 libatk1.0-dev libbonobo-activation4 libbonobo2-0 libbonobo2-common libdb3 libdbd-mysql-perl libdbi-perl libeel2-data libesd0... The following packages will be REMOVED: autoconf2.13 frozen-bubble frozen-bubble-lib gconf2 gnomemeeting itk3.1-dev libbonoboui2-0 libbonoboui2-common libdigest-md5-perl libforms0.89 libgconf2-4 libgnome2-0 libgnome2-common libgnomeui-0 libgnomevfs2-0 libgnomevfs2-common libgtk1.2-dev libgtk2.0-0png3 libgtk2.0-dev libmime-base64-perl libpango1.0-dev libsdl-mixer1.2-dev libsdl-perl libsdl-ttf1.2-dev libsdl1.2-dev libsmpeg-dev libstorable-perl nautilus tk8.3-dev tktable-dev x-window-system x-window-system-core xaw3dg-dev xlib6g xlib6g-dev xlibmesa-dev xlibmesa3 xlibosmesa3 xlibs-dev xlibs-pic xpdf xpdf-reader The following NEW packages will be installed: armagetron-common debconf-i18n fb-music-high fontconfig intltool-debian libaiksaurus-data libaiksaurus0c102 libeel2-data libfilehandle-unget-perl libfontconfig1 libforms1 libgdbm3 libgnutls7 libgsf-1 libice-dev libice6 libidl0 liblzo1 libmagick5.5.7 libmail-mbox-messageparser-perl libmysqlclient12 libncursesw5 libnet-daemon-perl libnewt0.51 libpaper1 libplrpc-perl libsdl-console packages upgraded, 80 newly installed, 42 to remove and 858 not upgraded. Need to get 67.1MB of archives. After unpacking 26.9MB will be used. Do you want to continue? [Y/n] Abort. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 26 / 38

48 Installation woes # sudo apt-get install debhelper Reading Package Lists... Done Building Dependency Tree... Done The following extra packages will be installed: armagetron armagetron-common autoconf bonobo-activation codebreaker debconf debconf-i18n debconf-utils dialog esound-common fb-music-high fontconfig frozen-bubble-data grepmail gv intltool-debian libaiksaurus-data libaiksaurus0c102 libatk1.0-0 libatk1.0-dev libbonobo-activation4 libbonobo2-0 libbonobo2-common libdb3 libdbd-mysql-perl libdbi-perl libeel2-data libesd0... The following packages will be REMOVED: autoconf2.13 frozen-bubble frozen-bubble-lib gconf2 gnomemeeting itk3.1-dev libbonoboui2-0 libbonoboui2-common libdigest-md5-perl libforms0.89 libgconf2-4 libgnome2-0 libgnome2-common libgnomeui-0 libgnomevfs2-0 libgnomevfs2-common libgtk1.2-dev libgtk2.0-0png3 libgtk2.0-dev libmime-base64-perl libpango1.0-dev libsdl-mixer1.2-dev libsdl-perl libsdl-ttf1.2-dev libsdl1.2-dev libsmpeg-dev libstorable-perl nautilus tk8.3-dev tktable-dev x-window-system x-window-system-core xaw3dg-dev xlib6g xlib6g-dev xlibmesa-dev xlibmesa3 xlibosmesa3 xlibs-dev xlibs-pic xpdf xpdf-reader The following NEW packages will be installed: armagetron-common debconf-i18n fb-music-high fontconfig intltool-debian libaiksaurus-data libaiksaurus0c102 libeel2-data libfilehandle-unget-perl libfontconfig1 libforms1 libgdbm3 libgnutls7 libgsf-1 libice-dev libice6 libidl0 liblzo1 libmagick5.5.7 libmail-mbox-messageparser-perl libmysqlclient12 libncursesw5 libnet-daemon-perl libnewt0.51 libpaper1 libplrpc-perl libsdl-console packages upgraded, 80 newly installed, 42 to remove and 858 not upgraded. Need to get 67.1MB of archives. After unpacking 26.9MB will be used. Do you want to continue? [Y/n] Abort. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 26 / 38

49 Installation woes # sudo apt-get install debhelper Reading Package Lists... Done Building Dependency Tree... Done The following extra packages will be installed: armagetron armagetron-common autoconf bonobo-activation codebreaker debconf debconf-i18n debconf-utils dialog esound-common fb-music-high fontconfig frozen-bubble-data grepmail gv intltool-debian libaiksaurus-data libaiksaurus0c102 libatk1.0-0 libatk1.0-dev libbonobo-activation4 libbonobo2-0 libbonobo2-common libdb3 libdbd-mysql-perl libdbi-perl libeel2-data libesd0... The following packages will be REMOVED: autoconf2.13 frozen-bubble frozen-bubble-lib gconf2 gnomemeeting itk3.1-dev libbonoboui2-0 libbonoboui2-common libdigest-md5-perl libforms0.89 libgconf2-4 libgnome2-0 libgnome2-common libgnomeui-0 libgnomevfs2-0 libgnomevfs2-common libgtk1.2-dev libgtk2.0-0png3 libgtk2.0-dev libmime-base64-perl libpango1.0-dev libsdl-mixer1.2-dev libsdl-perl libsdl-ttf1.2-dev libsdl1.2-dev libsmpeg-dev libstorable-perl nautilus tk8.3-dev tktable-dev x-window-system x-window-system-core xaw3dg-dev xlib6g xlib6g-dev xlibmesa-dev xlibmesa3 xlibosmesa3 xlibs-dev xlibs-pic xpdf xpdf-reader The following NEW packages will be installed: armagetron-common debconf-i18n fb-music-high fontconfig intltool-debian libaiksaurus-data libaiksaurus0c102 libeel2-data libfilehandle-unget-perl libfontconfig1 libforms1 libgdbm3 libgnutls7 libgsf-1 libice-dev libice6 libidl0 liblzo1 libmagick5.5.7 libmail-mbox-messageparser-perl libmysqlclient12 libncursesw5 libnet-daemon-perl libnewt0.51 libpaper1 libplrpc-perl libsdl-console packages upgraded, 80 newly installed, 42 to remove and 858 not upgraded. Need to get 67.1MB of archives. After unpacking 26.9MB will be used. Do you want to continue? [Y/n] Abort. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 26 / 38

50 Installation woes # sudo apt-get install debhelper Reading Package Lists... Done Building Dependency Tree... Done The following extra packages will be installed: armagetron armagetron-common autoconf bonobo-activation codebreaker debconf debconf-i18n debconf-utils dialog esound-common fb-music-high fontconfig frozen-bubble-data grepmail gv intltool-debian libaiksaurus-data libaiksaurus0c102 libatk1.0-0 libatk1.0-dev libbonobo-activation4 libbonobo2-0 libbonobo2-common libdb3 libdbd-mysql-perl libdbi-perl libeel2-data libesd0... The following packages will be REMOVED: autoconf2.13 frozen-bubble frozen-bubble-lib gconf2 gnomemeeting itk3.1-dev libbonoboui2-0 libbonoboui2-common libdigest-md5-perl libforms0.89 libgconf2-4 libgnome2-0 libgnome2-common libgnomeui-0 libgnomevfs2-0 libgnomevfs2-common libgtk1.2-dev libgtk2.0-0png3 libgtk2.0-dev libmime-base64-perl libpango1.0-dev libsdl-mixer1.2-dev libsdl-perl libsdl-ttf1.2-dev libsdl1.2-dev libsmpeg-dev libstorable-perl nautilus tk8.3-dev tktable-dev x-window-system x-window-system-core xaw3dg-dev xlib6g xlib6g-dev xlibmesa-dev xlibmesa3 xlibosmesa3 xlibs-dev xlibs-pic xpdf xpdf-reader The following NEW packages will be installed: armagetron-common debconf-i18n fb-music-high fontconfig intltool-debian libaiksaurus-data libaiksaurus0c102 libeel2-data libfilehandle-unget-perl libfontconfig1 libforms1 libgdbm3 libgnutls7 libgsf-1 libice-dev libice6 libidl0 liblzo1 libmagick5.5.7 libmail-mbox-messageparser-perl libmysqlclient12 libncursesw5 libnet-daemon-perl libnewt0.51 libpaper1 libplrpc-perl libsdl-console packages upgraded, 80 newly installed, 42 to remove and 858 not upgraded. Need to get 67.1MB of archives. After unpacking 26.9MB will be used. Do you want to continue? [Y/n] Abort. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 26 / 38

51 The Mancoosi project [ ] project strep FP7 ( ) focus coherence and maintenance of a FOSS distribution installation (user point of view) Utils for package installation management (package managers / meta-installer) installation removal upgrade downgrade... Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 27 / 38

52 Goals, approach and strategy Mancoosi s goal: enable safe, efficient maintainability of the Open Source software infrastructure built out of software packages A twofold approach to reach this objective: design algorithms and tools to tackle the upgradeability problem; this allows to find good upgrade paths w.r.t. the user s needs. conceive and implement a transactional update process; this allows to roll-back an unsatisfactory upgrade. A long term, ecosystem strategy to reach this objective: bring users, distributions, developers and researchers together! set up virtous cycles Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 28 / 38

53 Goals, approach and strategy Mancoosi s goal: enable safe, efficient maintainability of the Open Source software infrastructure built out of software packages A twofold approach to reach this objective: design algorithms and tools to tackle the upgradeability problem; this allows to find good upgrade paths w.r.t. the user s needs. conceive and implement a transactional update process; this allows to roll-back an unsatisfactory upgrade. A long term, ecosystem strategy to reach this objective: bring users, distributions, developers and researchers together! set up virtous cycles Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 28 / 38

54 Goals, approach and strategy Mancoosi s goal: enable safe, efficient maintainability of the Open Source software infrastructure built out of software packages A twofold approach to reach this objective: design algorithms and tools to tackle the upgradeability problem; this allows to find good upgrade paths w.r.t. the user s needs. conceive and implement a transactional update process; this allows to roll-back an unsatisfactory upgrade. A long term, ecosystem strategy to reach this objective: bring users, distributions, developers and researchers together! set up virtous cycles Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 28 / 38

55 Goals, approach and strategy Mancoosi s goal: enable safe, efficient maintainability of the Open Source software infrastructure built out of software packages A twofold approach to reach this objective: design algorithms and tools to tackle the upgradeability problem; this allows to find good upgrade paths w.r.t. the user s needs. conceive and implement a transactional update process; this allows to roll-back an unsatisfactory upgrade. A long term, ecosystem strategy to reach this objective: bring users, distributions, developers and researchers together! set up virtous cycles Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 28 / 38

56 Goals, approach and strategy Mancoosi s goal: enable safe, efficient maintainability of the Open Source software infrastructure built out of software packages A twofold approach to reach this objective: design algorithms and tools to tackle the upgradeability problem; this allows to find good upgrade paths w.r.t. the user s needs. conceive and implement a transactional update process; this allows to roll-back an unsatisfactory upgrade. A long term, ecosystem strategy to reach this objective: bring users, distributions, developers and researchers together! set up virtous cycles Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 28 / 38

57 All in a picture Mancoosi architecture In Mancoosi, there are really two main activities, corresponding to the architecture of our design, and they are loosely coupled User request WP4,WP5 Platform management interface Optimal upgrade path computation WP4, WP5 Transactional component manager WP2, WP3 Software Platform Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 29 / 38

58 Upgrade resolution Abstract view of packages through the metadata lens. Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 30 / 38

59 Mancoosi technology preview: visualizing Systems of Systems GNU/Linux software distributions: probably the most complex system of systems on the planet HOW can you visualize such a system of systems? Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 31 / 38

60 Mancoosi technology preview: visualizing Systems of Systems GNU/Linux software distributions: probably the most complex system of systems on the planet HOW can you visualize such a system of systems? Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 31 / 38

61 Draw a graph, no deep knowledge kde-amusements and kde-toys in Debian 3.1 (aka sarge, 2005) were unnecessary components, overlapping kde-games and kde-edu.they are waste, and are gone today (2009). Should be easy to spot, only 244 components are concerned! Can you see this fact here? Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 32 / 38

62 Draw a graph, no deep knowledge kde-amusements and kde-toys in Debian 3.1 (aka sarge, 2005) were unnecessary components, overlapping kde-games and kde-edu.they are waste, and are gone today (2009). Should be easy to spot, only 244 components are concerned! Can you see this fact here? Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 32 / 38

63 Draw a graph, no deep knowledge kde-amusements and kde-toys in Debian 3.1 (aka sarge, 2005) were unnecessary components, overlapping kde-games and kde-edu.they are waste, and are gone today (2009). Should be easy to spot, only 244 components are concerned! Can you see this fact here? Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 32 / 38

64 Draw a graph, no deep knowledge kde-amusements and kde-toys in Debian 3.1 (aka sarge, 2005) were unnecessary components, overlapping kde-games and kde-edu.they are waste, and are gone today (2009). Should be easy to spot, only 244 components are concerned! Can you see this fact here? Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 32 / 38

65 Let s try a more systemic approach Here is a graph of strong dominators for the KDE subsystem: See the problem, now? More on this at Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 33 / 38

66 Let s try a more systemic approach Here is a graph of strong dominators for the KDE subsystem: See the problem, now? More on this at Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 33 / 38

67 Generality of the approach Everything developed in Mancoosi is already relevant for some, and will be increasingly relevant to all component based technologies Linux : packages Eclipse : plugins Firefox : extensions Java : beans Web services : predictable service assembly Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 34 / 38

68 Conclusions FOSS is reopening markets, and provinding new opportunities, if we can take over the challenges! They are many: scientific : master the complexity of FOSS educational : adapt CS curricula to the FOSS revolution economical : build an efficient, viable ecosystem of actors Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 35 / 38

69 Outline 1 The Open Source Infrastructure and its Complexity 2 Coccinelle 3 Mancoosi 4 IRILL: research and innovation on Free Software Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 36 / 38

70 IRILL in the big picture To boldly attack these challenging problems, Inria is contributing to create IRILL, together with other academic and industy partners: IRILL (Innovation et Recherche en Informatique sur le Logiciel Libre): a center to host researchers, teachers, engineers, and free software developers to work together on the new scientific, technological and educational challenges of Free Software See more info on Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 37 / 38

71 Questions? Roberto Di Cosmo (Paris Diderot / INRIA) Free Software Complexity May 17th / Toulouse 38 / 38

Coccinelle: Practical Program Transformation for the Linux Kernel. Julia Lawall (Inria/LIP6) June 25, 2018

Coccinelle: Practical Program Transformation for the Linux Kernel. Julia Lawall (Inria/LIP6) June 25, 2018 Coccinelle: Practical Program Transformation for the Linux Kernel Julia Lawall (Inria/LIP6) June 25, 2018 1 Motivation Large, critical infrastructure-software code bases Linux kernel, OpenSSL, Qemu, Firefox,

More information

Coccinelle: A Program Matching and Transformation Tool for Systems Code

Coccinelle: A Program Matching and Transformation Tool for Systems Code Coccinelle: A Program Matching and Transformation Tool for Systems Code Gilles Muller Julia Lawall (INRIA/LIP6/IRILL) http://coccinelle.lip6.fr The problem: Dealing with Legacy Systems Code (Linux) It

More information

Towards better tools for the analysis and quality assurance of FOSS distributions

Towards better tools for the analysis and quality assurance of FOSS distributions Towards better tools for the analysis and quality assurance of FOSS distributions Ralf Treinen PPS, Université Paris Diderot April 26, 2011 Mancoosi at Paris-Diderot This is joint work with: Pietro Abate

More information

Coccinelle: A Program Matching and Transformation Tool for Linux

Coccinelle: A Program Matching and Transformation Tool for Linux Coccinelle: A Program Matching and Transformation Tool for Linux Nicolas Palix (DIKU) joint work with Julia Lawall (DIKU), Gilles Muller (INRIA) Jesper Andersen, Julien Brunel, René Rydhof Hansen, and

More information

Feature Diagrams as Package Dependencies

Feature Diagrams as Package Dependencies Feature Diagrams as Package Dependencies Roberto Di Cosmo and Stefano Zacchiroli Université Paris Diderot, PPS, UMR 7126, Paris, France roberto@dicosmo.org,zack@pps.jussieu.fr Abstract. FOSS (Free and

More information

TraCE: Transparent Configuration Environments

TraCE: Transparent Configuration Environments TraCE: Transparent Configuration Environments Martin Bravenboer Eelco Dolstra Eelco Visser Institute of Information & Computing Sciences Utrecht University, The Netherlands February 4, 2005 Project Overview

More information

RED HAT ENTERPRISE LINUX. STANDARDIZE & SAVE.

RED HAT ENTERPRISE LINUX. STANDARDIZE & SAVE. RED HAT ENTERPRISE LINUX. STANDARDIZE & SAVE. Is putting Contact us INTRODUCTION You know the headaches of managing an infrastructure that is stretched to its limit. Too little staff. Too many users. Not

More information

Intro to FOSS. What is FOSS?

Intro to FOSS. What is FOSS? Intro to FOSS What is FOSS? Outline Key principles of FOSS Some key players in early FOSS History of FOSS movement Why you should care Which came first, the chicken or the egg? FOSS as a new movement vs.

More information

Bits for the Mancoosi project

Bits for the Mancoosi project Bits for the Mancoosi project yeah, including visualizing package clusters :-) Stefano Zacchiroli zack@{pps.jussieu.fr,debian.org} Laboratoire PPS, Université Paris Diderot / The Debian Project 28 July

More information

Version 11

Version 11 The Big Challenges Networked and Electronic Media European Technology Platform The birth of a new sector www.nem-initiative.org Version 11 1. NEM IN THE WORLD The main objective of the Networked and Electronic

More information

Logiciel Libre TP 1 Project Presentation

Logiciel Libre TP 1 Project Presentation Logiciel Libre TP 1 Project Presentation Stefano Zacchiroli zack@irif.fr Laboratoire IRIF, Université Paris Diderot 2018 2019 URL https://upsilon.cc/zack/teaching/1819/loglib/ Copyright 2015 2019 Stefano

More information

BUILDING the VIRtUAL enterprise

BUILDING the VIRtUAL enterprise BUILDING the VIRTUAL ENTERPRISE A Red Hat WHITEPAPER www.redhat.com As an IT shop or business owner, your ability to meet the fluctuating needs of your business while balancing changing priorities, schedules,

More information

Debian development with scratchbox. Lauri Arimo

Debian development with scratchbox. Lauri Arimo Debian development with scratchbox Lauri Arimo Debian development with scratchbox by Lauri Arimo This document describes how Scratchbox can help developing software for debian Revision history Version:

More information

Inside the Mind of a Coccinelle Programmer

Inside the Mind of a Coccinelle Programmer Inside the Mind of a Coccinelle Programmer Julia Lawall (Inria/LIP6) Linux Security Summit August 25, 2016 2 What is Coccinelle? Find once, fix everywhere. Approach: Coccinelle: http://coccinelle.lip6.fr/

More information

Internet of Things specialization at Institut Mines-Télécom / Télécom Bretagne. Rennes campus, France

Internet of Things specialization at Institut Mines-Télécom / Télécom Bretagne. Rennes campus, France Internet of Things specialization at Institut Mines-Télécom / Télécom Bretagne Rennes campus, France 2 About Institut Mines-Télécom About Télécom Bretagne! A Graduate Engineering School & Research Centre

More information

Software Engineering Chap.7 - Design and Implementation

Software Engineering Chap.7 - Design and Implementation Software Engineering Chap.7 - Design and Implementation Simão Melo de Sousa RELEASE (UBI), LIACC (Porto), CCTC (Minho) Computer Science Department University of Beira Interior, Portugal Eng.Info./TSI,

More information

Debian on Handheld Computers The Pocket Workstation Project

Debian on Handheld Computers The Pocket Workstation Project Debian on Handheld Computers The Pocket Workstation Project Klaus Weidner WMP GmbH kw@w-m-p.com http://www.w-m-p.com/pocketworkstation/ Contents Status of the project Why?? Limitations of the platform

More information

Linux in the nuclear industry

Linux in the nuclear industry Linux in the nuclear industry 19 Mars 2018 Mehdi DOGGUY EDF Who am I? 1 / 24 Who am I? 2006 : M1 Informatique, Paris 11 1 / 24 Who am I? 2006 : M1 Informatique, Paris 11 2007 : M2 MPRI, Paris 7 1 / 24

More information

How to install Java Virtual Machine on Debian 7 GNU / Linux

How to install Java Virtual Machine on Debian 7 GNU / Linux How to install Java Virtual Machine on Debian 7 GNU / Linux Author : admin Debian 7 stable as most stable Debian releases includes custom Open Source Oracle Java Virtual Machine version called IcedTea

More information

Free & Open Source Software: The Academic Future

Free & Open Source Software: The Academic Future Free & Open Source Software: The Academic Future Paul E. Johnson University of Kansas http://lark.cc.ku.edu/~pauljohn Presentation at Ukrainian National University of L'viv May 27, 2005

More information

Continuous Integration and Release Management with Nix

Continuous Integration and Release Management with Nix Continuous Integration and Release Management with Nix Institute of Information & Computing Sciences Utrecht University, The Netherlands July 14, 2004 Outline 1 Continuous Integration 2 Release Management

More information

Aurelien Jarno 26/02/2006 FOSDEM. Debian GNU/kFreeBSD. Aurelien Jarno. What? Why? Status. The future. How to help?

Aurelien Jarno 26/02/2006 FOSDEM. Debian GNU/kFreeBSD. Aurelien Jarno. What? Why? Status. The future. How to help? aurel32@debian.org FOSDEM 26/02/2006 What is? port FreeBSD kernel (kfreebsd for short) kfreebsd 5.4 experimental version of kfreebsd 6.0 GNU userland GNU libc Cool tools (dpkg, apt,...) A Gentoo port has

More information

Having Problems w/linux (freeware) Graphics?

Having Problems w/linux (freeware) Graphics? Having Problems w/linux (freeware) Graphics? The past few years has seen the popularity of Linux increase substantially. While Linux earned its reputation for stable, reliable reputation in "headless"

More information

Introduction to Coccinelle

Introduction to Coccinelle Introduction to Coccinelle Julia Lawall (Inria/LIP6) http://coccinelle.lip6.fr September 17, 2014 Common programming problems Programmers don t really understand how C works.!e1 & e2 does a bit-and with

More information

If you re the administrator on any network,

If you re the administrator on any network, Let s do an inventory! If you re the administrator on any network, chances are you ve already faced the need to make an inventory. In fact, keeping a list of all the computers, monitors, software and other

More information

AimSniff. Jason Healy, Director of Networks and Systems

AimSniff. Jason Healy, Director of Networks and Systems AimSniff Jason Healy, Director of Networks and Systems Last Updated Mar 18, 2008 2 Contents 1 AimSniff 5 1.1 Introduction.............................. 5 1.2 Dependencies............................. 5

More information

Marco Porta Betim Çiço Peter Kaczmarski Neki Frasheri Virginio Cantoni. Fernand Vandamme (BIKEMA)

Marco Porta Betim Çiço Peter Kaczmarski Neki Frasheri Virginio Cantoni. Fernand Vandamme (BIKEMA) New Trends in Information Technologies and Their Integration in University Curricula: a Brief Study in the Context of the FETCH European Thematic Network Marco Porta Betim Çiço Peter Kaczmarski Neki Frasheri

More information

Why You Should Not Use Arch

Why You Should Not Use Arch Why You Should Not Use Arch A new users guide to highly personalized, low maintenance operating system. Artur Frącek CC BY-NC-ND 4.0 1 Intro Arch is a very good Linux distribution so it is not a surprise

More information

Yocto Project components

Yocto Project components Lecture 3 3 Yocto Project components 25 octombrie 2016 Exam questions 1. Please write al least four of the described components of a GNU toolchain 2. List the components which define a Linux distribution

More information

Supporting Software Evolution in Component-Based FOSS Systems

Supporting Software Evolution in Component-Based FOSS Systems Supporting Software Evolution in Component-Based FOSS Systems Roberto Di Cosmo b, Davide Di Ruscio a, Patrizio Pelliccione a, Alfonso Pierantonio a, Stefano Zacchiroli b a Università degli Studi dell Aquila,

More information

New Contributor Tutorial and Best Practices

New Contributor Tutorial and Best Practices New Contributor Tutorial and Best Practices Vicențiu Ciorbaru Software Engineer @ MariaDB Foundation * 2018 MariaDB Foundation * Goal of this session Most attendees here are highly experienced devs Let's

More information

Software Development Fundamentals (SDF)

Software Development Fundamentals (SDF) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 Software Development Fundamentals (SDF) Fluency in the process of software development is a prerequisite to the study of most

More information

ONELAB and Beyond. Prof. Serge Fdida. University P&M Curie, Paris 6, France

ONELAB and Beyond. Prof. Serge Fdida. University P&M Curie, Paris 6, France ONELAB and Beyond Prof. Serge Fdida University P&M Curie, Paris 6, France http://www.lip6.fr/rp IST 2006 Brussels, December 2006 1 ONELAB Rationale & History Grounded on ENEXT (NoE) Identification of critical

More information

Linux for Safety Critical Applications: Hunting down bug patterns

Linux for Safety Critical Applications: Hunting down bug patterns Linux for Safety Critical Applications: Hunting down bug patterns GNU/Linux for Safety Open-Source procedures and decisions Availability of technology and know-how Built on

More information

COPYRIGHTED MATERIAL. Installing Xcode. The Xcode Installer

COPYRIGHTED MATERIAL. Installing Xcode. The Xcode Installer 1 Installing Xcode Xcode is part of the Xcode Developer Tools suite developed and distributed by Apple Computer. If you haven t installed it already, read this chapter to find out how to do so. If the

More information

How Double-Fetch Situations turn into Double-Fetch Vulnerabilities:

How Double-Fetch Situations turn into Double-Fetch Vulnerabilities: How Double-Fetch Situations turn into Double-Fetch Vulnerabilities: A Study of Double Fetches in the Linux Kernel Pengfei Wang, Jens Krinke, Kai Lu, Gen Li, Steve Dodier-Lazaro College of Computer National

More information

CS101 Introduction to Programming Languages and Compilers

CS101 Introduction to Programming Languages and Compilers CS101 Introduction to Programming Languages and Compilers In this handout we ll examine different types of programming languages and take a brief look at compilers. We ll only hit the major highlights

More information

Exercises. Cacti Installation and Configuration

Exercises. Cacti Installation and Configuration Exercises Cacti Installation and Configuration Exercises Your Mission... Install Cacti Create device entry for your local router Create device entries for your local servers Create entries for class router

More information

Exercises. Cacti Installation and Configuration

Exercises. Cacti Installation and Configuration Exercises Cacti Installation and Configuration Exercises Your Mission... Install Cacti Create device entry for your local router Create device entries for your local servers Create entries for class router

More information

What Makes Up the Modern Linux OS?

What Makes Up the Modern Linux OS? White Paper by David Davis, ActualTech Media What Makes Up the Modern Linux OS? In this Paper The History of Linux... 2 The Components that Comprise the Linux Operating System... 3 What Is a Distribution?...

More information

Case Study. Encode helps University of Aberdeen strengthen security and reduce false positives with advanced security intelligence platform

Case Study. Encode helps University of Aberdeen strengthen security and reduce false positives with advanced security intelligence platform Encode helps University of Aberdeen strengthen security and reduce false positives with advanced security intelligence platform Summary For the University of Aberdeen, protecting IT infrastructure serving

More information

Hâpy. Daniel Dehennin. Pôle de Compétences Logiciels Libres. OpenNebula TechDay Paris cc by-nc-sa 2.0-fr

Hâpy. Daniel Dehennin. Pôle de Compétences Logiciels Libres. OpenNebula TechDay Paris cc by-nc-sa 2.0-fr Hâpy OpenNebula GNU/Linux distribution for two french ministries Daniel Dehennin Pôle de Compétences Logiciels Libres OpenNebula TechDay Paris 2015 cc by-nc-sa 20-fr D Dehennin (pcll) Hâpy 8 July 2015

More information

STRUCTURED SYSTEM ANALYSIS AND DESIGN. System Concept and Environment

STRUCTURED SYSTEM ANALYSIS AND DESIGN. System Concept and Environment STRUCTURED SYSTEM ANALYSIS AND DESIGN Definition: - System Concept and Environment A system is an orderly grouping of independent components linked together according to plan to achieve a specific objective.

More information

Enterprise Architecture

Enterprise Architecture Enterprise Architecture Dr. Adnan Albar Faculty of Computing & Information Technology King AbdulAziz University - Jeddah 1 Dimensions of Architectural Modeling Lecture 7 Week 6 Slides King AbdulAziz University

More information

An introduction to Docker

An introduction to Docker An introduction to Docker Ing. Vincenzo Maffione Operating Systems Security Container technologies on Linux Several light virtualization technologies are available for Linux They build on cgroups, namespaces

More information

High Performance Computing Prof. Matthew Jacob Department of Computer Science and Automation Indian Institute of Science, Bangalore

High Performance Computing Prof. Matthew Jacob Department of Computer Science and Automation Indian Institute of Science, Bangalore High Performance Computing Prof. Matthew Jacob Department of Computer Science and Automation Indian Institute of Science, Bangalore Module No # 09 Lecture No # 40 This is lecture forty of the course on

More information

IoT Security and Risk Management

IoT Security and Risk Management SESSION ID: GPS1-R03 IoT Security and Risk Management Tyson Macaulay Chief Security Strategist, Fortinet IoT Security is a BIG STORY! Security as a % of IT Budget 4% 7% 20 Billion+ devices? 2% Source:

More information

CS612: IT Technology and Course Overview

CS612: IT Technology and Course Overview CS612: IT Technology and Course Overview Dr. Lixin Tao ltao@pace.edu http://csis.pace.edu/lixin Computer Science Department Pace University Outline What is New in Computing Application Environment? What

More information

Program for Advance Telecom Services (PATS) Mobile Developer Days

Program for Advance Telecom Services (PATS) Mobile Developer Days Program for Advance Telecom Services (PATS) Mobile Developer Days 2007 30.08.2007 Knut Yrvin Community Manager Trolltech ASA Telenor in 1986 technical assistant Engineer in electronics 1992 Telenor planning

More information

ABOUT ME. Gianluca Bardaro, PhD student in Robotics Contacts: Research field: goo.gl/dbwhhc.

ABOUT ME. Gianluca Bardaro, PhD student in Robotics Contacts: Research field: goo.gl/dbwhhc. ABOUT ME Gianluca Bardaro, PhD student in Robotics Contacts: gianluca.bardaro@polimi.it 02 2399 3565 Research field: Formal approach to robot development Robot and robot architecture models Robot simulation

More information

SMART. Investing in urban innovation

SMART. Investing in urban innovation SMART Investing in urban innovation What Smart Belfast? Belfast has ambitious plans for the future. Building on our economic revival, we want to make our city an outstanding place to live, work and invest.

More information

Habanero Extreme Scale Software Research Project

Habanero Extreme Scale Software Research Project Habanero Extreme Scale Software Research Project Comp215: Garbage Collection Zoran Budimlić (Rice University) Adapted from Keith Cooper s 2014 lecture in COMP 215. Garbage Collection In Beverly Hills...

More information

Red Hat Application Migration Toolkit 4.0

Red Hat Application Migration Toolkit 4.0 Red Hat Application Migration Toolkit 4.0 Getting Started Guide Simplify Migration of Java Applications Last Updated: 2018-04-04 Red Hat Application Migration Toolkit 4.0 Getting Started Guide Simplify

More information

Towards Reusable Heterogeneous Data-Centric Disentangled Parts

Towards Reusable Heterogeneous Data-Centric Disentangled Parts Towards Reusable Heterogeneous Data-Centric Disentangled Parts Michael Reinsch and Takuo Watanabe Department of Computer Science, Graduate School of Information Science and Technology, Tokyo Institute

More information

Software Heritage. Building the Universal Software Archive for Open Science. Roberto Di Cosmo. September 17th, 2018

Software Heritage. Building the Universal Software Archive for Open Science. Roberto Di Cosmo. September 17th, 2018 Software Heritage Building the Universal Software Archive for Open Science Roberto Di Cosmo roberto@dicosmo.org September 17th, 2018 T H E G R E AT L I B R A RY O F S O U RC E C O D E Roberto Di Cosmo

More information

KDev-Valgrind : User Documentation

KDev-Valgrind : User Documentation KDev-Valgrind : User Documentation Damien Coppel Anthony Corbacho Lionel Duc Mathieu Lornac Sébastien Rannou Lucas Sarie This document is for developers wishing to use the plugin. It enables to understand

More information

Data safety for digital business. Veritas Backup Exec WHITE PAPER. One solution for hybrid, physical, and virtual environments.

Data safety for digital business. Veritas Backup Exec WHITE PAPER. One solution for hybrid, physical, and virtual environments. WHITE PAPER Data safety for digital business. One solution for hybrid, physical, and virtual environments. It s common knowledge that the cloud plays a critical role in helping organizations accomplish

More information

OpenStack and Hadoop. Achieving near bare-metal performance for big data workloads running in a private cloud ABSTRACT

OpenStack and Hadoop. Achieving near bare-metal performance for big data workloads running in a private cloud ABSTRACT OpenStack and Hadoop Achieving near bare-metal performance for big data workloads running in a private cloud ABSTRACT IT organizations are increasingly turning to the open source Apache Hadoop software

More information

VMworld 2015 Track Names and Descriptions

VMworld 2015 Track Names and Descriptions VMworld 2015 Track Names and Descriptions Software- Defined Data Center Software- Defined Data Center General Pioneered by VMware and recognized as groundbreaking by the industry and analysts, the VMware

More information

REPORT MICROSOFT PATTERNS AND PRACTICES

REPORT MICROSOFT PATTERNS AND PRACTICES REPORT MICROSOFT PATTERNS AND PRACTICES Corporate Headquarters Nucleus Research Inc. 100 State Street Boston, MA 02109 Phone: +1 617.720.2000 Nucleus Research Inc. TOPICS Application Development & Integration

More information

What do you see as GSMA s

What do you see as GSMA s GSMA: Connecting everyone and everything to a better future Mats Granryd, Director General of GSMA, shares his thoughts on the development of 5G, the Internet of Things, and why mobile is so important

More information

Coccigrep: a semantic grep for C language

Coccigrep: a semantic grep for C language Coccigrep: a semantic grep for C language Éric Leblond Stamus Networks April 27, 2014 Éric Leblond (Stamus Networks) Coccigrep: a semantic grep for C language April 27, 2014 1 / 14 Eric Leblond a.k.a Regit

More information

Containers: Exploits, Surprises, And Security

Containers: Exploits, Surprises, And Security Containers: Exploits, Surprises, And Security with Elissa Shevinsky COO at SoHo Token Labs Editor of Lean Out #RVASec @ElissaBeth on twitter @Elissa_is_offmessage on Instagram this was Silicon Valley in

More information

GRIDS INTRODUCTION TO GRID INFRASTRUCTURES. Fabrizio Gagliardi

GRIDS INTRODUCTION TO GRID INFRASTRUCTURES. Fabrizio Gagliardi GRIDS INTRODUCTION TO GRID INFRASTRUCTURES Fabrizio Gagliardi Dr. Fabrizio Gagliardi is the leader of the EU DataGrid project and designated director of the proposed EGEE (Enabling Grids for E-science

More information

THE JAVA ECOSYSTEM Platform for Web & Mobile Games

THE JAVA ECOSYSTEM Platform for Web & Mobile Games THE JAVA ECOSYSTEM Platform for Web & Mobile Games Kent Åberg Business Development Manager Education & Research Central & Northern Europe Sun Microsystems Open Communities Always Win Some brands: 2 Started

More information

# 47. Product data exchange using STEP

# 47. Product data exchange using STEP # 47 Product data exchange using STEP C. Demartini, S. Rivoira, A. Valenzano CENS and Dip. di Automatica e Informatica, Politecnico c.so Duca degli Abruzzi, 24 10129 Torino (Italy) tel. +39-11-5647016,

More information

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions)

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions) By the end of this course, students should CIS 1.5 Course Objectives a. Understand the concept of a program (i.e., a computer following a series of instructions) b. Understand the concept of a variable

More information

Extension of an existing package manager to produce traces of ugradeability problems in CUDF format Deliverable 5.2

Extension of an existing package manager to produce traces of ugradeability problems in CUDF format Deliverable 5.2 Extension of an existing package manager to produce traces of ugradeability problems in CUDF format Deliverable 5.2 Nature : Deliverable Due date : 31.07.2010 Start date of project : 01.02.2008 Duration

More information

GUI Basics and Windowing Systems. Using X Windows as a case study

GUI Basics and Windowing Systems. Using X Windows as a case study GUI Basics and Windowing Systems Using X Windows as a case study 2 CS 349 - Syllabus Evolution of GUI Programming On early computers, everything was rolled by hand Re-inventing the wheel with every iteration

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Handout 4: Version Control Reference

Handout 4: Version Control Reference CSCI 2600 Principles of Software Handout 4: Version Control Reference Introduction SVN (Subversion) provides the following functionality: It allows multiple users to edit the same files independently,

More information

VMworld 2015 Track Names and Descriptions

VMworld 2015 Track Names and Descriptions Software- Defined Data Center Software- Defined Data Center General VMworld 2015 Track Names and Descriptions Pioneered by VMware and recognized as groundbreaking by the industry and analysts, the VMware

More information

Coccinelle: Bug Finding for the Linux Community

Coccinelle: Bug Finding for the Linux Community Coccinelle: Bug Finding for the Linux Community Julia Lawall (INRIA) Gilles Muller (INRIA), René Rydhof Hansen (Aalborg), Nicolas Palix (Grenoble) January 6, 2012 Overview Goal: Improving the robustness

More information

February 2 nd Jean Parpaillon

February 2 nd Jean Parpaillon Using GIT with Kerrighed project Kerrighed Summit '07 February 2 nd 2007 Jean Parpaillon Table of contents Kerrighed SCM Subversion GIT GIT with Kerrighed References 2 Kerrighed

More information

Component-based software engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1

Component-based software engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1 Component-based software engineering Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1 Objectives To explain that CBSE is concerned with developing standardised components and

More information

Author: Tonny Rabjerg Version: Company Presentation WSF 4.0 WSF 4.0

Author: Tonny Rabjerg Version: Company Presentation WSF 4.0 WSF 4.0 Author: Tonny Rabjerg Version: 20150730 Company Presentation WSF 4.0 WSF 4.0 Cybercrime is a growth industry. The returns are great, and the risks are low. We estimate that the likely annual cost to the

More information

The SD-WAN security guide

The SD-WAN security guide The SD-WAN security guide How a flexible, software-defined WAN can help protect your network, people and data SD-WAN security: Separating fact from fiction For many companies, the benefits of SD-WAN are

More information

EASILY DEPLOY AND SCALE KUBERNETES WITH RANCHER

EASILY DEPLOY AND SCALE KUBERNETES WITH RANCHER EASILY DEPLOY AND SCALE KUBERNETES WITH RANCHER 2 WHY KUBERNETES? Kubernetes is an open-source container orchestrator for deploying and managing containerized applications. Building on 15 years of experience

More information

Lecture #1 4 th Year M.Sc. Dina Rafaa Ahmed

Lecture #1 4 th Year M.Sc. Dina Rafaa Ahmed Lecture #1 4 th Year M.Sc. Dina Rafaa Ahmed 1 Source Code: It is a specialized language that allows software developers to create and modify computer programs. If you do not have legal access to the source

More information

Linux Essentials Objectives Topics:

Linux Essentials Objectives Topics: Linux Essentials Linux Essentials is a professional development certificate program that covers basic knowledge for those working and studying Open Source and various distributions of Linux. Exam Objectives

More information

Maintaining accessibility through testing?

Maintaining accessibility through testing? ᅠ Maintaining accessibility through testing? Samuel Thibault Slides & stuff on http://brl.thefreecat.org/ http://hypra.fr/ 1 Gnuplot Color blindness: 8% male, 0.5% female 4 Gnuplot 5!! Color blindness:

More information

Introduction to Operating Systems. Note Packet # 1. CSN 115 Operating Systems. Genesee Community College. CSN Lab Overview

Introduction to Operating Systems. Note Packet # 1. CSN 115 Operating Systems. Genesee Community College. CSN Lab Overview Introduction to Operating Systems Note Packet # 1 CSN 115 Operating Systems Genesee Community College CSN Lab Overview Dual booted Windows/Linux Workstations Linux workstations currently run CentOS and

More information

Cloud Computing: Making the Right Choice for Your Organization

Cloud Computing: Making the Right Choice for Your Organization Cloud Computing: Making the Right Choice for Your Organization A decade ago, cloud computing was on the leading edge. Now, 95 percent of businesses use cloud technology, and Gartner says that by 2020,

More information

The Red Hat Way. Lee Miles General Manager, Red Hat Middle East, Turkey & Africa

The Red Hat Way. Lee Miles General Manager, Red Hat Middle East, Turkey & Africa The Red Hat Way Lee Miles General Manager, Red Hat Middle East, Turkey & Africa Connecting People is the best way to create Technology Community Builder Open source communities can innovate far more effectively

More information

RISC-V: Enabling a New Era of Open Data-Centric Computing Architectures

RISC-V: Enabling a New Era of Open Data-Centric Computing Architectures Presentation Brief RISC-V: Enabling a New Era of Open Data-Centric Computing Architectures Delivers Independent Resource Scaling, Open Source, and Modular Chip Design for Big Data and Fast Data Environments

More information

Intro to Linux & Command Line

Intro to Linux & Command Line Intro to Linux & Command Line Based on slides from CSE 391 Edited by Andrew Hu slides created by Marty Stepp, modified by Jessica Miller & Ruth Anderson http://www.cs.washington.edu/391/ 1 Lecture summary

More information

SECURING THE DIGITAL ECONOMY. Reinventing the Internet for Trust

SECURING THE DIGITAL ECONOMY. Reinventing the Internet for Trust SECURING THE DIGITAL ECONOMY Reinventing the Internet for Trust The Internet Just Can t Keep Up Companies Are Increasingly Dependent on the Internet for Business Growth 90% 76% 18% 35% to rank business

More information

Athena History. Modular Debathena. Debian Packages An example diversion. Other Athena customizations

Athena History. Modular Debathena. Debian Packages An example diversion. Other Athena customizations Athena Project Athena started at MIT in 1983 grant from IBM and Digital Mission statement: By 1988, create a new educational computing environment at MIT built around high performance graphics workstations,

More information

SYMANTEC: SECURITY ADVISORY SERVICES. Symantec Security Advisory Services The World Leader in Information Security

SYMANTEC: SECURITY ADVISORY SERVICES. Symantec Security Advisory Services The World Leader in Information Security SYMANTEC: SECURITY ADVISORY SERVICES Symantec Security Advisory Services The World Leader in Information Security Knowledge, as the saying goes, is power. At Symantec we couldn t agree more. And when it

More information

OS structure. Process management. Major OS components. CSE 451: Operating Systems Spring Module 3 Operating System Components and Structure

OS structure. Process management. Major OS components. CSE 451: Operating Systems Spring Module 3 Operating System Components and Structure CSE 451: Operating Systems Spring 2012 Module 3 Operating System Components and Structure Ed Lazowska lazowska@cs.washington.edu Allen Center 570 The OS sits between application programs and the it mediates

More information

Red Hat Application Migration Toolkit 4.2

Red Hat Application Migration Toolkit 4.2 Red Hat Application Migration Toolkit 4.2 Getting Started Guide Learn how to use the Red Hat Application Migration Toolkit to migrate and modernize Java applications and components. Last Updated: 2019-03-26

More information

Connect with Remedy: SmartIT: Social Event Manager Webinar Q&A

Connect with Remedy: SmartIT: Social Event Manager Webinar Q&A Connect with Remedy: SmartIT: Social Event Manager Webinar Q&A Q: Will Desktop/browser alerts be added to notification capabilities on SmartIT? A: In general we don't provide guidance on future capabilities.

More information

White Paper. Low Cost High Availability Clustering for the Enterprise. Jointly published by Winchester Systems Inc. and Red Hat Inc.

White Paper. Low Cost High Availability Clustering for the Enterprise. Jointly published by Winchester Systems Inc. and Red Hat Inc. White Paper Low Cost High Availability Clustering for the Enterprise Jointly published by Winchester Systems Inc. and Red Hat Inc. Linux Clustering Moves Into the Enterprise Mention clustering and Linux

More information

Parallel File Systems for HPC

Parallel File Systems for HPC Introduction to Scuola Internazionale Superiore di Studi Avanzati Trieste November 2008 Advanced School in High Performance and Grid Computing Outline 1 The Need for 2 The File System 3 Cluster & A typical

More information

Cisco Data Center Network Manager 5.1

Cisco Data Center Network Manager 5.1 Cisco Data Center Network Manager 5.1 Product Overview Modern data centers are becoming increasingly large and complex. New technology architectures such as cloud computing and virtualization are adding

More information

BSc (Honours) Computer Science Curriculum Outline

BSc (Honours) Computer Science Curriculum Outline BSc (Honours) Computer Science Curriculum Outline 1. Introduction: The economic and strategic importance provided by Computer Science and Information Technology is increasing daily. This importance is

More information

Three OPTIMIZING. Your System for Photoshop. Tuning for Performance

Three OPTIMIZING. Your System for Photoshop. Tuning for Performance Three OPTIMIZING Your System for Photoshop Tuning for Performance 72 Power, Speed & Automation with Adobe Photoshop This chapter goes beyond speeding up how you can work faster in Photoshop to how to make

More information

Device Discovery for Vulnerability Assessment: Automating the Handoff

Device Discovery for Vulnerability Assessment: Automating the Handoff Device Discovery for Vulnerability Assessment: Automating the Handoff O V E R V I E W While vulnerability assessment tools are widely believed to be very mature and approaching commodity status, they are

More information

Lethbridge/Laganière 2005 Chapter 9: Architecting and designing software 6

Lethbridge/Laganière 2005 Chapter 9: Architecting and designing software 6 Trying to deal with something big all at once is normally much harder than dealing with a series of smaller things Separate people can work on each part. An individual software engineer can specialize.

More information

Mesh Networking Principles

Mesh Networking Principles Technology, N. Jones Research Note 8 July 2003 Mesh Topologies Promise Resilient Wireless Networks Mesh architecture will become an essential element of wireless networking because it is easy to install,

More information