Open Source. General Public License. Linux.
Maybe you’ve read about them, or maybe know somebody running something with these in the title. But maybe you haven’t actually taken any more time to understand the origins of Open Source.
You’ve heard the buzz and know that it’s transforming the IT landscape and making inroads around the globe. But maybe you need some background on what Free and Open Source Software (FOSS) is really about. And what should you know about open source licenses, such as the General Public License?
In this edition of In Focus, you’ll get a brief overview of the origins of open source, some related topics to know about, and how to start making sense of the GPL
1. An Overview of FOSS
The roots of the modern Free and Open Source movement are somewhat
debatable, and their provenance is lengthy. So we’ll go with an executive
summary instead. The BSD (Berkeley Software Distribution) project and its
later derivatives
examples of a Free or Open Source operating system, tracing their genesis to
1977.
In and around 1984, Richard Stallman (usually referred to by his initials
RMS) founded the GNU project (GNU’s not Unix) as an effort to create a
free alternative to Unix
for workstations that once belonged to AT&T. As part of his effort to create
a free version of Unix, Stallman created the GNU General Public License in
1989.
By 1991, we were up to version 2. Essentially, the GPL
enshrines and defines the nature of free software and is usually held up as
the standard against which all other licenses are measured. (But we’ll have more on that
later.)
Free software has nothing to do with price; it’s about software freedom.
The quote “Free as in Freedom not Beer” is oft-repeated in the free software
community. Free software is a philosophy and a movement that pre-dates the
term “open source” by almost 14 years.
Open Source
The term open source was coined in 1998, partially in response to a
community-driven initiative led by Bruce Perens and Eric Raymond after
Netscape released the source code for its browser (which is the roots of the
Mozilla browser and project
under what was to become known as the Mozilla Public License. Perens and
Raymond were looking to make “free software” as defined by the Free Software Foundation (FSF) and its
GPL more palatable to commercial interests. The Open Source Initiative
(OSI) currently lists over 50 licenses that are considered by it to be “OSI
approved.”
External links to philosophy of free software and FSF:
Open Source Definition
OSI Approved Licenses
Free Software Foundation
Richard Stallman: Why Software Should Be Free
The GNU Project
Free vs. Open Source
There are numerous differences between “free” and “open source” software.
For the free software community, a free software-compatible application is one
that offers a license that is either the GPL or is compatible with the GPL.
For the open source community, open source is software that is compatible with the open source
definition.
But in a more philosophical sense, there is a much deeper division between the
two groups.
“The fundamental difference between the two movements is in their values,
their ways of looking at the world,” Richard Stallman wrote in his paper
“Free vs. Open Source Software.”
“For the open source movement, the issue of
whether software should be open source is a practical question, not an
ethical one. As one person put it, ‘Open source is a development methodology; free
software is a social movement.’
“For the open source movement, non-free
software is a suboptimal solution. For the free software movement, non-free
software is a social problem and free software is the solution.”
The Linux Kernel
One of the things that the GNU project was missing was a kernel. A
kernel is the core of an operating system and contains much of the root
functions, such as virtual memory, multitasking, shared libraries, demand
loading, shared copy-on-write executables and TCP/IP networking.
In 1991, Linus Torvalds wrote and first published the Linux kernel. It has been
licensed under the GPL since its 0.12 release while Torvalds holds the copyright to
the Linux name. The Linux kernel is the core of the Linux operating systems and is currently at
version 2.6, though many popular distributions are running version 2.4.
One issue that has been raised in relation to the interaction of the 2.6
kernel with the 2.4 kernel is the practice of
“backporting” features of 2.6 into 2.4. Torvalds
supports the practice, saying
“it makes sense from a company standpoint to basically ‘cherry-pick’ stuff from the development
version that they feel is important to their customers.”
Linux Kernel Issues
The origins of Linux and whether any copyrighted code was taken from Unix is
one of the issues at the root of the SCO vs. Linux controversy. (See our Special Report on the SCO/Linux controversy.)
against any potential liability that may be involved.
2. What you need to know about Linux and the GPL
We asked OSDL’s Open Source Architecture Specialist Bill Weinberg for a quick summary of what enterprise
users need to know about Linux and the GPL. Here are some of the highlights:
the Linux operating system represent the work of thousands of developers
over the last decade. Despite the size of that community, the origin of
code in Linux is tightly controlled and well-documented. And unlike
proprietary software content (with its often-obscure
origins) any user, corporation or individual can confirm the pedigree,
quality and safety of any part of Linux at any time.
world leverage Linux with a mixture of open and proprietary
software stacks, building on COTS and custom components that meet their
application needs.
storing and distributing your corporate data over Linux in no way
impacts the status of your IP or your company’s claims to it.
doesn’t make it any less safe from crackers, viruses or other digital
malfeasance. The developers of Linux do not believe in security through
obscurity, but rather that community oversight and community-based exploit
discovery and repair result in a vastly more secure computing environment.
open source community at any level you desire. You can contribute to the
code base; you can improve the code; you can share your opinions about
it; or you can just use Linux to support your IT needs.
(Next: Even More Things Enterprise Users Need to Know about the GPL:)
(Continued from Page 1)
3. Things Enterprise Users Need to Know about Linux:
Though many Linux distributions are available entirely for free (via an ISO
download or otherwise), that’s obviously not always the case. Enterprise
grade distributions with support and enterprise management tools almost
always have an associated cost. Some call it a subscription; others call it
support. The bottom line is it’s money.
entity per say. No one really owns the Linux operating system. Linus
Torvalds owns the copyright to the name “Linux” but that’s
about it.
The Linux kernel varies somewhat from distribution to distribution as
vendors include different versions and, in some cases, add additional
functionality. This is certainly not a bad thing, but it’s
important to note when trying to make apples-to-apples comparisons.
claims that this is the year of the Linux desktop. The reality is that
the Linux desktop has existed for years, and it continues to improve and
evolve just like the Microsoft desktop continues to evolve.
4. More Things Enterprise Users Need to Know about the GPL
1) Anyone can use GPL licensed code
2) Anyone can re-use GPL licensed code
3) GPL doesn’t protect against trademark, copyright or patent
infringement
4) The GPL text must be included in every copy of software distributed
under its license
5) The GPL is not the only free or open source software license
Though the GPL is one of the most common licenses, it is not the only
free/open source software license.
(Next page: The Kernel, Distros)
Continued from page 2
The Kernel, Distros
The Linux kernel itself is not a complete operating system. It needs to
be packaged or distributed with a host of other tools and applications in
order to constitute a modern operating system. Thus, a full Linux operating
system is commonly referred to as a Linux Distribution.
A Linux distribution is essentially a “snapshot” of the Linux kernel and various
applications at a certain release that are packaged together in the
distribution by its package maintainers. It is entirely possible for users
to freely download a Linux kernel and the various applications and package
their own distribution, though the complexity of interaction and
dependencies, as well as technical support and quality assurance,
are among the issues that usually lead most users to make use of a
“mainstream” Linux distribution.
Linux Distributors
There are a number of popular Linux distributions. Arguably, the most
popular commercial Linux distribution is Red Hat Linux, which was
first created in 1994 and made waves with its IPO in 1999 (at the time it was the
8th biggest, first-day gain in Wall Street history). SUSE Linux, which was
acquired by Novell
in November 2003, is Red Hat’s principal rival in the
commercial Linux distribution market and benefits from the tremendous
resources that Novell is putting behind it Red Hat and Novell/SUSE benefit from sales/channel
agreements with
IBM and HP that significantly expand their reach and scope.
France-based Mandrake Linux is also considered a mainstream distribution.
In the Asian market, TurboLinux has made some inroads, with the emerging
story appears to be the homegrown Linux effort known as
Asianux,
which was officially created in January 2004.
Community-Based Distributions
Not all Linux distributions are “commercial” distributions. In fact, there
are many who would argue that the most popular distributions in use today
are in fact “community-based” distributions. Here’s a sampling:
Debian
This is a popular distribution with a large user base. It is
definitively a strong proponent of free software and its Social Contract,
which is the basis of the Open Source Definition.
Gentoo Linux
This distribution gained some
momentum
in 2004, both in terms of statistical growth and its emerging enterprise platform.
Fedora Project
This was created by Red Hat after it terminated its Red Hat
Linux line (as opposed to its current mainstay Red Hat Enterprise Linux).
This is a Red Hat-sponsored community distribution that serves as
proving ground for the next generation of its Enterprise line. It is an
extremely popular and trend-setting distribution in its own right, with the
adoption of such innovative technologies as
SELinux (Security Enhanced
Linux) and NX security for the Linux Kernel.
Other Distributions
There are many other distributions but, for the most
part, they are based on one of the mainstream distributions.
Desktop Linux
This refers to a Linux operating system environment that has a GUI
Microsoft Windows). There are two essential
technical components that comprise a Linux desktop, an X Windows System
implementation and a desktop environment. Until recently XFree86 was the
most common X Windows System implementation, but, due to licensing issues, it
has been supplanted by X.org.
KDE
This and GNOME
are two main desktop environments that are both actively developed.
Most mainstream Linux distributions will allow users to use
either of them depending on a user’s personal preference.
BSD
The FreeBSD Project is one of the earliest open source operating system
projects, and is a direct descendent of the original open source BSD work
performed at the University of California at Berkeley. There are currently
three mainstream open source BSD variants, NetBSD, OpenBSD and FreeBSD.
The GPL and FOSS Licenses
The GNU GPL (General Public License) is one of the most common and popular
FOSS licenses. It is the license under which the Linux kernel
itself is licensed and is at the heart of the SCO controversy. SCO
claimed
at one point that the GPL is unconstitutional, but its dispute really started with IBM over a contract. It has now evolved to include claims that select parts of the Linux kernel were pilfered from Unix System V code, to which SCO claims copyright. The case is slated for trial in 2005.
The GPL essentially encourages and enshrines Freedom for the software
code. The code is open. If you would like, you can read the
text of the GPL itself.
Software that is GPL-licensed is free to be distributed and modified, providing a number of crucial stipulations are met: that it remain free (remember “free” as in freedom not necessarily cost) and that the license is always included.
In some respects, the stipulation that code must always remain free makes
the GPL a restrictive license as opposed to a BSD-type
FOSS applications run the gamut of virtually everything that exists in
enterprise IT software today. They are either produced as a project by a
developer or foundation or are donated/freed/liberated by a corporate
entity to the community. The ongoing discussion by SUN Microsystmes over whether
to open source Java is part of the latter discussion. Even Microsoft has
gotten into the game with its
WiX toolset, one of three projects it has donated to the open source community.
One of the most popular open source repositories is SourceForge, which claims the largest number of projects and
developers (currently over 800,000 developers).
The Apache Software Foundation (ASF) contains a number of very influential
and popular FOSS applications, including its namesake Apache Web Server,
which is the dominant Web server on the Internet today. ASF projects are
typically licensed under the
Apache Software License.
The Mozilla Foundation is known for the Mozilla and Firefox Web
browsers, which are cross-platform and, in light of recent security
issues with Microsoft’s Internet Explorer, are seen as alternatives to the IE browser.