Inside: CONFERENCE REPORTS WIESS ‘02 OSDI ‘02

Total Page:16

File Type:pdf, Size:1020Kb

Inside: CONFERENCE REPORTS WIESS ‘02 OSDI ‘02 THE MAGAZINE OF USENIX & SAGE April 2003 • volume 28 • number 2 inside: CONFERENCE REPORTS WIESS ‘02 OSDI ‘02 & The Advanced Computing Systems Association & The System Administrators Guild conference reports This issue’s reports focus on WIESS ‘02 2nd Workshop on Industrial example, a stock trading system may and on OSDI ‘02. Experiences with Systems have several redundant pathways for Software (WIESS ‘02) entering a trade, to protect against trades being lost before they have been BOSTON, MASSACHUSSETS entered. For the IT infrastructure, this OUR THANKS TO THE SUMMARIZERS: DECEMBER 9-11, 2002 means the redundant pathways need to Scott Banachowski KEYNOTE ADDRESS be synchronized at some point. This Richard S. Cox type of problem is rarely considered by Douglass J. Wilson, IBM Steven Czerwinski researchers or product developers. Himanshu Raj Summarized by Richard S. Cox Cristian Tapus MIT’s Technology Review recently ran a Third, error logging and reporting is Charles P. Wright story titled “Why Software Is So Bad.” important. As an industry, we currently Praveen Yalagandula support very primitive logging with no Wanghong Yuan The key is the problem of integration. Nickolai Zeldovich mechanisms for root-cause analysis or Ben Zhao CIOs spend 35% of their budgets on correlation of failures. Error messages Yutao Zhong integration, because every new system are often arcane or not useful, and “first- must work with the existing infrastruc- failure” capture is impossible. This is ture. The complexity of integration is evidenced by a common, though unreal- driven up by the constraints of the busi- istic, request from support center staff: ness environment as well as those of the “Turn logging on and recreate the fail- software. ure.”Because logging events need to be Several lessons can be learned from correlated, error tracking and logging studying systems usage. First, standards should be a basic service of the OS. and componentization are proving inef- fectual for complex systems. For exam- SESSION 2 ple, LDAP is a fine protocol, but no two Summarized by Wanghong Yuan organizations use the same schema. USING END-USER LATENCY TO MANAGE Making matters worse, interoperability INTERNET INFRASTRUCTURE is poor due to differing interpretations Bradley Chen, Michael Perkowitz, of standards, edge conditions, and ven- Appliant dor-specific extensions. This is leading The problem addressed in this paper is to a change from creating solutions by that distributed application perfor- mixing “best-of-breed” products to mance is important but hard to under- using a single “best-of-suite” package. stand. CDN selection and CRM systems Unfortunately, much of the literature on were offered as examples to illustrate the building component systems is aca- problem. The basic approach proposed demic, failing to deal with the scale of is to use end-user latency analysis: (1) large systems. content (e.g., an HTML Web page) is Second, systems will fail. Other indus- tagged to collect data; (2) tagged data is tries have accepted this, but software observed on the desktop (end-client sys- engineers are just now realizing that fail- tem); and (3) data is analyzed on the ure is hard. The recovery design must fit management server. the usage, which means the designer The challenges for this approach include must understand the failure modes in (1) technique issues such as larger data practice. This may mean using less sets, heavy-tailed data, and the deriva- sophisticated algorithms that are better tion of request properties, and (2) social fitted to the purpose. It also means and economic issues such as privacy. accepting that business redundancy may The results show that end-user latency be at odds with IT redundancy. For analysis can monitor relevant informa- tion, which is obscured otherwise. 82 Vol. 28, No. 2 ;login: BUILDING AN “IMPOSSIBLE” VERIFIER The previous talk was given in 1977, SESSION 4 ON A JAVA CARD when the main computer models were Summarized by Cristian Tapus EPORTS Damien Deville, Gilles Grimaud, Uni- IBM mainframes, coming VAX, and R AN EXAMINATION OF THE TRANSITION OF versité de Science et Technologies de PDP-11s, while C was taking the place of THE ARJUNA DISTRIBUTED TRANSACTION Lille ASM and structured programming PROCESSING SOFTWARE FROM RESEARCH TO The smart card device environment became the dominating idea. Three PRODUCTS ONFERENCE imposes constraints on CPU, memory, approaches of building system software C M.C. Little, HP–Arjuna Labs; S.K. and I/O. As a result, Java Card Virtual were introduced and compared: “Do it Shrivastava, Newcastle University Machine needs to be adapted to the right,”“Do it over,”and “Do it small, Arjuna started in 1986 as a research smart card. The regular verification with tools.”“Do it right” emphasizes an project at the University of Newcastle, approaches do not fit, since unification optimistic on-requirement analysis that England. Arjuna was a “vehicle for get- is costly. The proposed approach assumes “we know what we are doing.” ting Ph.D. degrees.”The decision to use addresses the above problems via (1) “Do it over” puts more emphasis on C++ was a pragmatic one (expensive non-stressing encoding and (2) efficient early implementation by still starts from Euclid vs. free C++ AT&T). Arjuna was fixed points using a software cache pol- scratch. The last approach, by contrast, designed to be a toolkit for development icy. considers tools instead of systems and of fault-tolerant applications which builds small and fast so that, if neces- would provide persistence, concurrency ENHANCEMENTS FOR HYPER-THREADING sary, failures can happen quickly. TECHNOLOGY IN THE OPERATING SYSTEM: control, and replication. Modularity was SEEKING THE OPTIMAL SCHEDULING In order to see the effect of these strate- the key to the longevity of the system. Jun Nakajima, Venkatesh Pallipadi, Intel gies, Mashey discussed different metrics In 1994 Newcastle University asked In this talk, Jun Nakajima first gave an to qualitatively measure success and gave them to implement a student registra- overview of Hyper-Threading (HT) statistics and observations of projects in tion system because the “academic technology by comparing it with multi- data processing. Figures and numbers researchers are cheap.”The system was processors. The reason behind HT is showed the low percentage of complete supposed to run on multiple platforms, that CPU units are not fully utilized. To success and indicated the larger a project serve about 15,000 students over five fully utilize CPU units, the HT approach is, the higher overhead it has to pay. days, and could not tolerate failures. is to use two architectural sets, thereby Laws of program evolution also state There were problems, though. Assump- executing two tasks simultaneously. that the entropy of a project increases tions were made about network parti- with time and may result in a complex tions and recovery that made the system The HT approach requires the OS program used to solve a simple problem. scheduler to support HT-aware idle han- fail to identify dead machines vs. slow dling, processor-cache affinity, and scal- Several principles were offered to coun- connections. Intuition is not a good ability (per-package run queue). This teract these problems: “build it fast,” approach to designing systems. paper proposes a micro-architecture “keep it small and simple,”and “build The year 1995 brought standards for scheduling assist (MASA) methodology for change.”Existing tools should be uti- transactions: object transaction system to address the above problems, thereby lized whenever possible. It would be specifications (OTSS) from OGM. It achieving an optimal process placement. good to build tools and consider the shared many similarities with Arjuna, interfaces of connecting tools. Some but it was only a two-phase commit pro- INVITED TALK “small tactics,”including “lifeboat the- tocol engine (persistence and concurrent ory,”“sinking lifeboat theory,”and other control where required from elsewhere). SOFTWARE STRATEGY FROM THE considerations about people and consol- “1980 TIME CAPSULE” At this time the OTSArjuna system was idations, were also discussed. John R. Mashey developed. With only slight changes to the interfaces between modules, the sys- Summarized by Yutao Zhong Even after 25 years of work, we need to keep these problems in mind, since sys- tem was complying with OTS. JTSAr- John Mashey reused the slides from a tem complexity is much higher nowa- juna followed just two years later as the talk he gave 25 years ago titled “Small Is days; fortunately, people are increasingly first Java transaction service. Beautiful and Other Thoughts on Pro- aware of these issues. gramming Strategies.”It is interesting to In 1999 the Java and C++ transaction see from these old slides and the newly Mashey ended the talk by saying, “We service were marketed; only one year added comments what has changed and have met the enemy and they are us.” later Bluestone took over Arjuna Solu- what hasn’t. tions Limited and was, in turn, acquired by HP in 2001. When the system was April 2003 ;login: WIESS ‘02 G 83 acquired by Bluestone the need for real to the entire engineering staff (one Currently there are almost no such testing became a reality. For the previous advantage of being small), and there are incentives. decade only about 20 tests had been strict coding standards (it is the law). Andrew Hume: I do technology transfer used, but this was increased to over 4000 The talk continued by describing tech- at AT&T. The problem is enticing tests in order to stretch every feature of niques used to obtain the final product. researchers, because you go for a while the system. The previous method was to When you hit bedrock, try to rethink without publishing papers. On the other get a release out to the users, and users what you are doing; and observe the hand, you can then write a different kind would then report problems back and “rule of holes – if you are in one, stop of paper, about the real aspects of sys- bugs would be fixed.
Recommended publications
  • Communicating Between the Kernel and User-Space in Linux Using Netlink Sockets
    SOFTWARE—PRACTICE AND EXPERIENCE Softw. Pract. Exper. 2010; 00:1–7 Prepared using speauth.cls [Version: 2002/09/23 v2.2] Communicating between the kernel and user-space in Linux using Netlink sockets Pablo Neira Ayuso∗,∗1, Rafael M. Gasca1 and Laurent Lefevre2 1 QUIVIR Research Group, Departament of Computer Languages and Systems, University of Seville, Spain. 2 RESO/LIP team, INRIA, University of Lyon, France. SUMMARY When developing Linux kernel features, it is a good practise to expose the necessary details to user-space to enable extensibility. This allows the development of new features and sophisticated configurations from user-space. Commonly, software developers have to face the task of looking for a good way to communicate between kernel and user-space in Linux. This tutorial introduces you to Netlink sockets, a flexible and extensible messaging system that provides communication between kernel and user-space. In this tutorial, we provide fundamental guidelines for practitioners who wish to develop Netlink-based interfaces. key words: kernel interfaces, netlink, linux 1. INTRODUCTION Portable open-source operating systems like Linux [1] provide a good environment to develop applications for the real-world since they can be used in very different platforms: from very small embedded devices, like smartphones and PDAs, to standalone computers and large scale clusters. Moreover, the availability of the source code also allows its study and modification, this renders Linux useful for both the industry and the academia. The core of Linux, like many modern operating systems, follows a monolithic † design for performance reasons. The main bricks that compose the operating system are implemented ∗Correspondence to: Pablo Neira Ayuso, ETS Ingenieria Informatica, Department of Computer Languages and Systems.
    [Show full text]
  • Linux Kernel and Driver Development Training Slides
    Linux Kernel and Driver Development Training Linux Kernel and Driver Development Training © Copyright 2004-2021, Bootlin. Creative Commons BY-SA 3.0 license. Latest update: October 9, 2021. Document updates and sources: https://bootlin.com/doc/training/linux-kernel Corrections, suggestions, contributions and translations are welcome! embedded Linux and kernel engineering Send them to [email protected] - Kernel, drivers and embedded Linux - Development, consulting, training and support - https://bootlin.com 1/470 Rights to copy © Copyright 2004-2021, Bootlin License: Creative Commons Attribution - Share Alike 3.0 https://creativecommons.org/licenses/by-sa/3.0/legalcode You are free: I to copy, distribute, display, and perform the work I to make derivative works I to make commercial use of the work Under the following conditions: I Attribution. You must give the original author credit. I Share Alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under a license identical to this one. I For any reuse or distribution, you must make clear to others the license terms of this work. I Any of these conditions can be waived if you get permission from the copyright holder. Your fair use and other rights are in no way affected by the above. Document sources: https://github.com/bootlin/training-materials/ - Kernel, drivers and embedded Linux - Development, consulting, training and support - https://bootlin.com 2/470 Hyperlinks in the document There are many hyperlinks in the document I Regular hyperlinks: https://kernel.org/ I Kernel documentation links: dev-tools/kasan I Links to kernel source files and directories: drivers/input/ include/linux/fb.h I Links to the declarations, definitions and instances of kernel symbols (functions, types, data, structures): platform_get_irq() GFP_KERNEL struct file_operations - Kernel, drivers and embedded Linux - Development, consulting, training and support - https://bootlin.com 3/470 Company at a glance I Engineering company created in 2004, named ”Free Electrons” until Feb.
    [Show full text]
  • Linux 2.5 Kernel Developers Summit
    conference reports This issue’s reports are on the Linux 2.5 Linux 2.5 Kernel Developers Linux development, but I certainly Kernel Developers Summit Summit thought that, in all of this time, someone would have brought this group together OUR THANKS TO THE SUMMARIZER: SAN JOSE, CALIFORNIA before. Rik Farrow, with thanks to La Monte MARCH 30-31, 2001 Yarroll and Chris Mason for sharing their Summarized by Rik Farrow Another difference appeared when the notes. first session started on Friday morning. The purpose of this workshop was to The conference room was set up with cir- provide a forum for discussion of cular tables, each with power strips for changes to be made in the 2.5 release of For additional information on the Linux laptops, and only a few attendees were Linux (a trademark of Linus Torvalds). I not using a laptop. USENIX had pro- 2.5 Kernel Developers Summit, see the assume that many people reading this vided Aeronet wireless setup via the following sites: will be familiar with Linux, and I will hotel’s T1 link, and people were busy <http://lwn.net/2001/features/KernelSummit/> attempt to explain things that might be typing and compiling. Chris Mason of unfamiliar to others. That said, the odd- <http://cgi.zdnet.com/slink?91362:12284618> OSDN noticed that Dave Miller had numbered releases, like 2.3 and now 2.5, <http://www.osdn.com/conferences/kernel/> written a utility to modulate the speed of are development releases where the the CPU fans based upon the tempera- intent is to try out new features or make ture reading from his motherboard.
    [Show full text]
  • Linux Kernel 8.1 Introduction
    Page 1 of 6 Linux Kernel 8.1 Introduction: The Linux kernel is a Unix-like operating system kernel used by a variety of operating systems based on it, which are usually in the form of Linux distributions. The Linux kernel is a prominent example of free and open source software. The Linux kernel is released under the GNU General Public License version 2 (GPLv2) (plus some firmware images with various non-free licenses), and is developed by contributors worldwide. Day-to-day development discussions take place on the Linux kernel mailing list. The Linux kernel was initially conceived and created in 1991 by Finnish computer science student Linus Torvalds. Linux rapidly accumulated developers and users who adapted code from other free software projects for use with the new operating system. The Linux kernel has received contributions from thousands of programmers. 8.2 History: History In April 1991, Linus Torvalds, a 21-year-old student at the University of Helsinki, Finland started working on some simple ideas for an operating system. He started with a task switcher in Intel 80386 assembly language and a terminal driver. On 25 August 1991, Torvalds posted the following to comp.os.minix, a newsgroup on Usenet: I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since April, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things).
    [Show full text]
  • Community Notebook Kernel News Zack’S Kernel News
    Community Notebook Kernel News Zack’s Kernel News Chronicler Zack Licensing Confusion performing source distribution, a complete An interesting little licensing escapade occurred machine-readable copy of the corresponding Brown reports on recently. Matthew Garrett noticed that CloudLi- source code, to be distributed under the the latest news, nux corporation had released their lve kernel terms of Sections 1 and 2 above on a medium driver under a new, proprietary license, whereas customarily used for software interchange.” views, dilemmas, before, it had been released under the GPL. So apparently, a written offer would be good Technically, nothing too fishy is going on here enough, and the three-week delay might be and developments because the original author of GPL’d code is still legally acceptable. within the Linux free to release that code under other licenses. But Matthew noticed that, in this particular Kernel Development kernel community. case, the driver still pretended to the kernel to Overflow be a GPL’d driver and still used kernel symbols Thomas Gleixner posed an interesting ques- By Zack Brown that were restricted to GPL-only code. tion – all the more interesting in that it was That’s a big no-no, and Matthew submitted taken so seriously. He pointed out that inter- a patch to make the kernel automatically treat est in the kernel was continuing to grow and the lve module as non-GPL, whether it said it that the number of patch submissions from was or not. But that wasn’t the end of the story individuals and corporations was growing as because licensing is a very touchy legal sub- well.
    [Show full text]
  • Q8:BËJ B<IE<C E<NJ
    GIF>I8DD@E> Kernel News Q8:BËJB<IE<CE<NJ KiXZb`e^B\ie\c ;lZb8e[:fm\i ?Xi[nXi\:fdgXk`Y`c`kp :feki`Ylk`fej Matt Mackall was a bit shaken to discover Adam Osuchowski was poking around in Wang Chen created a web page for kernel a kernel error message that began “Trea- the deep dark places of the kernel and contribution stats. The page breaks down son uncloaked!” The message went on to came upon some hard-coded assembly information by person and employer, as say that the TCP code had detected a bro- that used the xadd instruction. Because well as by change sets and number of ken peer. Matt thought the message was the 386 CPU didn’t implement an xadd lines of code affected. Also, it's possible alarming, so he posted a patch to change instruction, Adam asked whether Linux to search for a given person or employer it. Herbert Xu’s reply was, “What’s next, still supported the 386. The xadd in- and see a graph of only their contribu- you’re going to remove ‘printer on fire’ as struction turned out to be just a bug, but tions. According to Wang’s stats, for ex- well? This message has been there for the incident sparked a discussion about ample, Yahoo employees have contri- eons and is part of Linux lore.” But Alan which older systems were and were not buted much more to version 2.6.25 than Cox said, “It was changed. The printer on supported under Linux.
    [Show full text]
  • Fall 2020 Vol
    ;login FALL 2020 VOL. 45, NO. 3 : & Guide to the Performance of Optane DRAM Jian Yang, Juno Kim, Morteza Hoseinzadeh, Joseph Izraelevitz, and Steven Swanson & Understanding Linux Superpages Weixi Zhu, Alan L. Cox, and Scott Rixner & Interview with Ion Stoica about Serverless Computing Rik Farrow & Measuring the Health of Open Source Projects Georg J.P. Link & Using OpenTrace to Track DB Performance Problems Anatoly Mikhaylov Columns SRE and Justice Laura Nolan Socially Distant Projects Cory Lueninghoener Communicating with BPF Dave Josephsen Hand-Over-Hand Locking for Highly Concurrent Collections Terence Kelly Everything Is a Punch Card Simson L. Garfinkel Thanks to our USENIX Supporters! USENIX appreciates the financial assistance our Supporters provide to subsidize our day-to-day operations and to continue our non-profit mission. Our supporters help ensure: • Free and open access to technical information • Student Grants and Diversity Grants to participate in USENIX conferences • The nexus between academic research and industry practice • Diversity and representation in the technical workplace We need you now more than ever! Contact us at [email protected]. USENIX PATRONS USENIX BENEFACTORS We offer our heartfelt appreciation to the following sponsors and champions of conference diversity, open access, and our SREcon communities via their sponsorship of multiple conferences: Ethyca Dropbox Microsoft Azure Packet Datadog Goldman Sachs LinkedIn Salesforce More information at www.usenix.org/supporters FALL 2020 VOL. 45, NO. 3 EDITOR EDITORIAL Rik Farrow 2 Musings Rik Farrow MANAGING EDITOR Michele Nelson SYSTEMS COPY EDITORS 6 An Empirical Guide to the Behavior and Use of Scalable Steve Gilmartin Persistent Memory Jian Yang, Juno Kim, Morteza Hoseinzadeh, Amber Ankerholz Joseph Izraelevitz, and Steven Swanson PRODUCTION 12 How to Not Copy Files Yang Zhan, Alex Conway, Nirjhar Mukherjee, Arnold Gatilao Ian Groombridge, Martín Farach-Colton, Rob Johnson, Yizheng Jiao, Ann Heron Michael A.
    [Show full text]
  • Intel & Freebsd
    Intel & FreeBSD: Better Together Ben Widawsky <[email protected]> Agenda ● Introduction (OTC & Me) ● Intel’s past involvement with BSD ● Intel’s latest involvement with BSD ● What’s next ● Power Management deep-dive ● Q&A Ben Widawsky ● Introduced to FreeBSD 5.0 in 2003 by kensmith@ ● Software Developer at Intel since 2005 ● Focus switched to FreeBSD upstream work in 2018 ● Diverse career Intel Open Source Technology Center (OTC) ● Organization specializing in Open Source ● 20 years building expertise and acquiring industry talent ○ The other Alan Cox ● Contributes to over 100 community projects ● Community Friendly licensing ○ Match the ecosystem when possible ■ GPLv2 or GPLv3 for utilities close to Linux Kernel ■ Apache for cloud BSD-Friendly Case Studies Intel Linux Graphics Intel Network Drivers ● Intel releases code GPL/BSD ● Internally developed ● Intel develops Linux driver ● Intel releases GPL code for Linux ● Community ports to FreeBSD and BSD code for FreeBSD ● Work required from community ● No work required from community ● Licenses can become mixed ● Licenses are clear ● Developed largely in the open ● Developed largely internally ● Easy for community to contribute ● Difficult to take community contributions Agenda ● Introduction (OTC & Me) ● Intel’s past involvement with BSD Intel’s Past Contributions ● 2011 ○ jimharris@ started on integrated SAS controller in the Intel C600 ● 2012 ○ jimharris@ merged isci(4), nvme(4), nvd(4), nvmecontrol(8) ● 2013 ○ NTB (Non-Transparent Bridge) driver (by carl@) ○ jimharris@ ported VTune
    [Show full text]
  • Using Upstream MPTCP in Linux Systems
    Using Upstream MPTCP in Linux Systems Mat Martineau and Ossama Othman Intel United States of America [email protected], [email protected] ​ ​ Abstract data stream. The MPTCP layer provides both outgoing data Multipath TCP patches have been merged for inclusion in and the necessary sequence numbers to the TCP stack to the Linux kernel, v5.6 and later. A community effort use when populating the MPTCP option headers at has been ongoing to develop an upstream-friendly kernel transmit time. For incoming packets, the subflow data patch set, with patches merged in 2020 that implement stream and the corresponding MPTCP-level sequence MPTCP capability according to RFC 8684 (MPTCP v1). Complementing this set of kernel patches is a numbers are passed up to the MPTCP layer where the userspace reference implementation for the MPTCP combined data stream is reassembled. Even though the generic netlink API called the Multipath TCP Daemon, TCP subflows deliver independent reassembled data i.e. "mptcpd". The Multipath TCP Daemon provides an streams to the MPTCP layer, those streams may contain extensible framework for MPTCP path management. redundant or out-of-order data for MPTCP to use when reassembling at the upper layer. The MPTCP option is also used while establishing Keywords connections, for the initial subflow or when adding MPTCP, Multipath, TCP subflows to an existing MPTCP connection. Additional MPTCP-related information is exchanged during the Introduction SYN/SYN-ACK/ACK handshake in either case. If the two peers do not both support the same MPTCP version during Multipath TCP (MPTCP) has been added to the upstream the initial connection process, a regular TCP connection is Linux kernel during the first half of 2020.
    [Show full text]
  • Unreliable Guide to Hacking the Linux Kernel Release 4.13.0-Rc4+
    Unreliable Guide To Hacking The Linux Kernel Release 4.13.0-rc4+ The kernel development community Sep 05, 2017 CONTENTS 1 Unreliable Guide To Hacking The Linux Kernel 1 1.1 Introduction ................................................. 1 1.2 The Players ................................................. 1 1.3 Some Basic Rules .............................................. 3 1.4 ioctls: Not writing a new system call .................................. 3 1.5 Recipes for Deadlock ............................................ 4 1.6 Common Routines ............................................. 4 1.7 Wait Queues include/linux/wait.h .................................. 7 1.8 Atomic Operations ............................................. 8 1.9 Symbols ................................................... 8 1.10 Routines and Conventions ......................................... 9 1.11 Putting Your Stuff in the Kernel ...................................... 10 1.12 Kernel Cantrips ............................................... 11 1.13 Thanks .................................................... 12 2 Unreliable Guide To Locking 13 2.1 Introduction ................................................. 13 2.2 The Problem With Concurrency ...................................... 13 2.3 Locking in the Linux Kernel ........................................ 14 2.4 Hard IRQ Context .............................................. 16 2.5 Cheat Sheet For Locking .......................................... 16 2.6 The trylock Functions ..........................................
    [Show full text]
  • Free Software and Proprietary Software a History of Free Software the FOSS Development Model FOSS Business Model Conclusion
    Free Software and Proprietary Software A History of Free Software The FOSS development model FOSS business model Conclusion Free Software Free as in freedom Josep M. Rib´o Universitat de Lleida January 22, 2009 Josep M. Rib´o Free Software Free Software and Proprietary Software A History of Free Software The FOSS development model FOSS business model Conclusion Outline 1 Free Software and Proprietary Software 2 A History of Free Software The first years 1980s: The begining of the Free Software Movement 1990s: Linux 2000s: The present of FOSS 3 The FOSS development model The Bazaar Infrastructure for FOSS projects 4 FOSS business model A collection of FOSS business models Community projects vs. corporate projects 5 Conclusion Josep M. Rib´o Free Software Free Software and Proprietary Software A History of Free Software The FOSS development model FOSS business model Conclusion You buy a brand new car..... Congratulations!!!! But unfortunatelly, its hood is locked and the seller has not given you the key :-( If you want to fix some add-ons or if the car breaks down you have to pay a visit to the Official Service (the only ones who have the key of the hood) ... and what will happen? Josep M. Rib´o Free Software Free Software and Proprietary Software A History of Free Software The FOSS development model FOSS business model Conclusion The official service The price is guaranteed to be excessive There is no competition (monopoly) It hinders the development of a network of local garage workshops It prevents you from fixing it yourself (provided you have mechanics knowledge) In a few years there will not be any maintenance for that car forcing you to buy a new one Would you buy a product like this? Well...
    [Show full text]
  • Open Source Software License Information
    Open Source Software license information This document contains an open source software license information for the product VACUU·SELECT. The product VACUU·SELECT contains open source components which are licensed under the applicable open source licenses. The applicable open source licenses are listed below. The open source software licenses are granted by the respective right holders directly. The open source licenses prevail all other license information with regard to the respective open source software components contained in the product. Modifications of our programs which are linked to LGPL libraries are permitted for the customer's own use and reverse engineering for debugging such modifications. However, forwarding the information acquired during reverse engineering or debugging to third parties is prohibited. Furthermore, it is prohibited to distribute modified versions of our programs. In any case, the warranty for the product VACUU·SELECT will expire, as long as the customer cannot prove that the defect would also occur without these modification. WARRANTY DISCLAIMER THE OPEN SOURCE SOFTWARE IN THIS PRODUCT IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. See the applicable licenses for more details. Written offer This product VACUU·SELECT contains software components that are licensed by the holder of the rights as free software, or Open Source software, under GNU General Public License, Versions 2 and 3, or GNU Lesser General Public License, Versions 2.1, or GNU Library General Public License, Version 2, respectively. The source code for these software components can be obtained from us on a data carrier (e.g.
    [Show full text]