Linux on the Mainframe

The idea of Open Source plays a major role in Linux development. In this section, we will look at what Open Source is, what it means for software to be Open Source, and what it means for Linux to be Open Source.

The definition of Open Source can be found on the organization's Web site, http://www.opensource.org.[1] Open Source code is licensed under a variety of licenses, all of which provide access to the source code and the right to modify it.

[1] A discussion of the Open Source philosophy is given in The Cathedral and the Bazaar by Eric Raymond.

1.2.1 Peer review means quality

How can something put together by a disparate group of programmers have high quality? Put yourself in their shoes. Any code you submit to the Open Source project is scrutinized by a lot of people. You cannot hide behind object code either, so delivering "spaghetti code" that works is not good enough. You do not want to be the laughing stock of the cybernetic neighborhood, do you? Therefore, you will work to create high quality code.

1.2.2 Licenses

Commercial software usually comes with a license that regulates its use. Open Software is no exception. The Open Source community recognized that when others use someone else's intellectual property, there must be rules that regulate users' rights and obligations. The Open Source Initiative provides a procedure for certifying software licenses as Open Source licenses.

One of the core ideas of Open Source software from a user's point of view is that a license grants you certain rights:

  • You have the right to receive the source code for the software along with any binary version of the software.

  • You have the right to modify the software according to your own needs or to expand the software with further functionality.

  • You have the right to redistribute the software, including your modifications or without them.

Because you receive the source code with the object code, you are not dependent on a software vendor for support of the code. You will not find yourself locked in a situation where you are forced to upgrade your software just because your current version goes out of service.

Two of the most prominent licenses are the GNU General Public License (GPL) and the BSD (from the University of California, Berkeley) license. While both licenses meet the Open Source definition (given at http://www.opensource.org), they differ substantially in their terms.

The Linux operating system consists of several portions of software called packages that are licensed under different Open Source licenses.

1.2.3 Linux as an Open Source project

When Linus Torvalds started work on "Linus' UNIX" operating system in 1991, he was aware of the work the Open Source community was doing. He derived his work from the academic MINIX operating system written by Andrew S. Tanenbaum. Although Torvalds' project started out as a private enterprise, it quickly became independent of the MINIX project and became a global, widespread project, especially when Torvalds released his work as Open Source software under the GPL. The Internet made this possible; it played an important role in the Linux and Open Source movements.

Open Source projects attract many of today's best programmers because of their simple and sensible premise: Let us work as a team, because together we are faster and smarter than each one alone.

A brief history of Linux

Linux was developed with the help of many volunteer programmers and "wizards" across the Internet, allowing anyone with enough know-how to develop and change the system. Table 1-1 shows the rapid development of Linux in the early years.

Table 1-1. Linux history: the early years

Year

Event

1991

  • August: Linus Torvalds sends a request over the Internet asking if other programmers are interested in helping him with the project. In the first six months, he received over 600 responses.

  • September: Torvalds puts version 0.01 out on an FTP server for others to look at.

  • October: Torvalds announces the first generally available version of Linux, version 0.02.

1992

  • March: Torvalds increases the version number to 0.95, to reflect his expectation that the system would soon be ready for an "official" release.

1993

  • December: The Linux kernel is still at version 0.99.pl14, slowly approaching 1.0. (Generally, software is not assigned the version number 1.0 until it is deemed complete or bug-free.)

1994

  • March: Linux 1.0 is announced at the Department of Computer Science at the University of Helsinki.

  • The first commercial Linux distribution, Red Hat Linux, is introduced.

What's in a name?

What is Linux? Ask three different people and you may get the following three answers:

  • The operating system kernel, offering the basic services of process scheduling, virtual memory, file management, and I/O what Linus Torvalds started.

  • A complete system consisting of the kernel plus the many applications that it runs: compilers, editors, graphical interfaces, games, and so on what Linus Torvalds and thousands of others are developing in the Open Source community.

  • What you get when you buy, for example, "SuSE Linux 8.0" in your local software store what a distributor has chosen to combine into an easily installable product.

None of the above answers is right or wrong. Those who look at Linux as just the kernel of an operating system have a point, as other parts that make up the full operating system come from Open Source projects, such as GNU.

There are also people who think of Linux as what we refer to as a Linux distribution. Sometimes the association is so strong that they use the name of the distribution instead of Linux when talking about the operating system (Red Hat, SuSE, and Turbolinux, to name a few). This is easy to understand, given that a Linux distribution is what you are probably dealing with when you run Linux.

However, for the purposes of this book, we will use "Linux" to mean the complete operating system. When we talk about the kernel, we will call it the kernel or the Linux kernel. When we talk about a combination of programs you can buy from SuSE or others, we will call it a distribution.

IBM and Linux

IBM does not provide a Linux distribution. However, IBM is an active participant in the Open Source community. IBM delivers Open Source code that is either actively integrated into the official source code repositories of the various projects or packages or helps to integrate it.

Категории