Wednesday, 11 June 2008

History of Linux

The Linux kernel has been marked by constant growth throughout its history. Since the initial release of its source code in 1991, it has grown from a small number of C files under a license prohibiting commercial distribution to its state in 2007 of about 290 megabytes of source under the GNU General Public License.

Pre-creation

The Unix operating system was conceived and implemented in the 1960s and first released in 1970. Its wide availability and portability meant that it was widely adopted, copied and modified by academic institutions and businesses, with its design being influential on authors of other systems.

In 1983, Richard Stallman started the GNU project with the goal of creating a free UNIX-like, POSIX-compatible operating system. As part of this work, he wrote the GNU General Public License (GPL). By the early 1990s there was almost enough available to create a full operating system. However, the GNU kernel, called Hurd, had failed to attract enough attention from developers.

Another free operating system project in the 1980s was the Berkeley Software Distribution (BSD). This was developed by UC Berkeley from the 6th edition of Unix from AT&T. Since AT&T Unix code was contained in BSD, AT&T filed a lawsuit in the early 1990s against the University of California, which strongly limited the development of BSD and greatly slowed adoption.

MINIX, a Unix-like system intended for academic use, was released by Andrew S. Tanenbaum in 1987. While source code for the system was available, modification and redistribution were restricted. In addition, MINIX's 16-bit design was not well adapted to the 32-bit features of the increasingly cheap and popular Intel 386 architecture for personal computers.

These factors of a lack of a widely-adopted, free kernel provided the impetus for Torvalds's starting his project. He has stated that had either the GNU or 386BSD kernels been available at the time, he likely would not have written his own.

In 1991, in Helsinki, Linus Torvalds began a project that later became the Linux kernel. It was initially a terminal emulator, which Torvalds used to access the large UNIX servers of the university. He wrote the program specifically for the hardware he was using and independent of an operating system because he wanted to use the functions of his new PC with an 80386 processor. Development was done on Minix using the GNU C compiler, which is still the main choice for compiling Linux today (although the code can be built with other compilers, such as the Intel C Compiler).

As Torvalds wrote in his book Just for Fun, he eventually realized that he had written an operating system kernel. On 25 August 1991, he announced this system in a Usenet posting to the newsgroup "comp.os.minix.":

Hello everybody out there using minix -

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).

I've currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-)

Linus (torvalds@kruuna.helsinki.fi)

PS. Yes - it's free of any minix code, and it has a multi-threaded fs. It is NOT portable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(.

- Linus Torvalds

The name

Linus Torvalds had wanted to call his invention Freax, a portmanteau of "freak," "free," and "x," an allusion to Unix. During the start of his work on the system, he stored the files under the name "Freax" for about a half year. Torvalds had already considered the name "Linux," but initially dismissed it as too egotistical.

In order to facilitate development, the files were uploaded to the ftp server (ftp.funet.fi) of the Helsinki University of Technology (HUT) in September 1991. Ari Lemmke, Torvald's coworker at the HUT who was responsible for the servers at the time, did not feel Freax was a good name. Consequently, he dubbed the project "Linux" without consulting Torvalds. Later, however, Torvalds consented to "Linux": "After many arguments, he finally admitted that Linux was simply the better name. In the source code of version 0.01 of Linux, the name 'Freax' was still used in the makefile. Only later was the name Linux used. Thus the name actually not planned at all became generally accepted world-wide."

"Linux is obsolete"

Main article: Tanenbaum-Torvalds debate

In 1992 Andrew S. Tanenbaum, recognized computer scientist and author of the Minix microkernel system, wrote a Usenet article on the newsgroup comp.os.minix with the title "Linux is obsolete," which marked the beginning of a famous debate about the structure of the then-recent Linux kernel. Among the most significant criticisms were that:

* the design of the kernel was monolithic and thus old-fashioned.

* the lack of portability, due to the use of exclusive features of the Intel 386 processor, was poor design in Tanenbaum's eyes. "Writing a new operating system that is closely tied to any particular piece of hardware, especially a weird one like the Intel line, is basically wrong."

* the methods of open distribution and development of the software lacked strict control of the source code by any individual person.

* the operating system installed a set of features which were useless from Tanenbaum's point of view. (He judged the file system, one that permitted parallel access from several programs, as a redundant "performance chop").

Tanenbaum's prediction that Linux would become outdated within a few years and replaced by GNU Hurd (which he considered to be more modern) proved incorrect. Linux has been ported to all major platforms and its open development model has led to an exemplary pace of development. In contrast, GNU Hurd has not yet reached the level of stability that would allow it to be used on a production server.

Linux under the GNU GPL

Torvalds first published the Linux kernel-then exclusively known as Linux-under its own licence, which was, essentially, a shared source licence with a restriction on commercial activity. With code from the GNU system freely available, it seemed advantageous if this could be used with the Linux kernel. In 1992, he suggested to switch to the GNU General Public License. He first announced this change in the release notes of version 0.12. In the middle of December 1992 he published version 0.99 using the GNU GPL

Linux and GNU developers worked to integrate GNU components with Linux to make a fully functional and free operating system.

Torvalds has stated, "making Linux GPL'd was definitely the best thing I ever did."

GNU/Linux naming controversy

For more details on this topic, see GNU/Linux naming controversy.

The designation "Linux" was initially used by Torvalds only for the Linux kernel. The kernel was, however, frequently used together with other software, especially that of the GNU project. This quickly became the most popular adoption of GNU software. In June 1994 in GNU's bulletin, Linux was referred to as a "free UNIX clone", and the Debian project began calling its product Debian GNU/Linux. In May 1996, Richard Stallman published the editor Emacs 19.31, in which the type of system was renamed from Linux to Lignux. This spelling was intended to refer specifically to the combination of GNU and Linux, but this was soon abandoned in favor of "GNU/Linux".

This name garnered varying reactions. The GNU and Debian projects use the name, although most developers simply use the term "Linux" to refer to the combination.

Official mascot

Main article: Tux

Torvalds announced in 1996 that there would be a mascot for Linux, a penguin. Larry Ewing provided the original draft of today's well known mascot based on this description. The name Tux was suggested by James Hughes as derivative of Torvalds's UniX.

New development

Kernel

There are many other well-known maintainers for the Linux kernel beside Torvalds such as Alan Cox and Marcelo Tosatti. Cox maintained version 2.2 of the kernel until it was discontinued at the end of 2003. Likewise, Tosatti maintained version 2.4 of the kernel until the middle of 2006. Andrew Morton steers the development and administration of the 2.6 kernel, which was released on 18 December 2003 in its first stable incarnation. Also the older branches are still constantly improved.

The success of Linux in many areas of application is mostly due to the lack of licensing costs and the characteristics of free software concerning stability, security, expandability and maintenance of leading back. When vulnerabilities do occur, such as the vmsplice() exploit, they are quickly disclosed and patched.

Community

The largest part of the work on Linux is performed by the Community, the programmers that use Linux and send their suggested improvements to the maintainers. Various companies have also helped not only with the development of the Kernels, but also with the writing of the body of auxiliary software, which is distributed with Linux.

It is released both by organized projects such as Debian, and by projects connected directly with companies such as Fedora and openSUSE. The members of the respective projects meet at various conferences and fairs, in order to exchange ideas. One of the largest of these fairs is the LinuxTag in Germany (currently in Berlin), where about 10,000 people assemble annually, in order to discuss Linux and the projects associated with it.

Desktop

Main article: X Window System

early X

early X

Most Linux distributions have the capability to-and in most cases do-run the X Window System to interface with the user graphically.

Main articles: KDE and GNOME

KDE was founded in 1996 by Matthias Ettrich. At the time, he was troubled by the inconsistencies in UNIX applications. He proposed a new desktop environment. He also wanted to make this desktop easy to use. His initial Usenet post spurred a lot of interest.

Matthias chose to use the Qt toolkit for the KDE project. At the time, Qt did not use a free software license. Members of the GNU project became concerned with the use of such a toolkit for building a free software desktop environment. In August 1997, two projects were started in response to KDE: the Harmony toolkit (a free replacement for the Qt libraries) and GNOME (a different desktop without Qt and built entirely on top of free software). GTK+ was chosen as the base of GNOME in place of the Qt toolkit.

In November 1998, the Qt toolkit was licensed under the free/open source Q Public License (QPL). But debate continued about compatibility with the GNU General Public License (GPL). In September 2000, Trolltech made the Unix version of the Qt libraries available under the GPL, in addition to the QPL, which has eliminated the concerns of the Free Software Foundation.

Both KDE and GNOME now participate in freedesktop.org, an effort to standardize Unix desktop interoperability, although there is still some competition between them.

Software such as Xgl or AIGLX also enable hardware acceleration in turn allowing Compiz to display graphical effects similar to Mac OS X's Exposé.

Open Source Development Lab and Linux Foundation

The Open Source Development Lab (OSDL) was created in the year 2000, and is an independent nonprofit organization which pursues the goal of optimizing Linux for employment in data centers and in the carrier range. It served as sponsored working premises for Linus Torvalds and also for Andrew Morton, until the middle of 2006 when he transferred to Google, which runs on the Linux kernel. Torvalds works full time on behalf the OSDL, developing the Linux Kernels. The noncommercial mechanism of several major companies is financed as Red Hat, Novell, Mitsubishi, Intel, IBM, Dell and HP.

On January 22, 2007, OSDL and the Free Standards Group merged to form The Linux Foundation, narrowing their respective focuses to that of promoting GNU/Linux in competition with Microsoft Windows.

Companies

Despite being open-source a few companies profit from Linux. These companies, most of which are also members of the Open Source Development Lab, invest substantial resources into the advancement and development of Linux, in order to make it suited for various application areas. This includes hardware donations for driver developers, cash donations for people who develop Linux software, and the employment of Linux programmers at the company. Some examples are IBM and HP, which use Linux first of all on their own servers, and Red Hat, which maintains its own distribution. Likewise Trolltech supports Linux by the development and GPL licensing of Qt, which makes the development of KDE possible, and by the employment of some X and KDE developers.

Controversy over Linux

Linux has been surrounded by controversy repeatedly since its inception.

Samizdat

Years later Andrew Tanenbaum would again discuss the defects of Linux. When Ken Brown in his book Samizdat interviewed Tanenbaum, the latter explained that Torvalds had not copied the design of MINIX. Brown wrote a section documenting its relationship to Linux well. Naturally Torvalds knew his book and Minix.

But the code was his. The proof of this is that he messed the design up. MINIX is a nice, modular microkernel system Linus rewrote the whole thing as a big monolithic kernel, complete with inline assembly code :-(. The first version of Linux was like a time machine. It went back to a system worse than what he already had on his desk. Of course, he was just a kid and didn't know better (although if he had paid better attention in class he should have), but producing a system that was fundamentally different from the base he started with seems pretty good proof that it was a redesign. I don't think he could have copied UNIX because he didn't have access to the UNIX source code, except maybe John Lions' book, which is about an earlier version of UNIX that does not resemble Linux so much.

Competition from Microsoft

Although Torvalds has said that Microsoft's feeling threatened by Linux in the past was of no consequence to him, the Microsoft and Linux camps had a number of antagonistic interactions between 1997 and 2001. This became quite clear for the first time in 1998, when the first Halloween document was brought to light by Eric S. Raymond. This was a short essay by a Microsoft developer that sought to lay out the threats posed to Microsoft by free software and identified strategies to counter these perceived threats. However the Free Software Foundation distance themselves from deeming Microsoft as the Great Satan and reminded the community that every company which spreads proprietary software is doing something that is bad for software users.

Competition entered a new phase in the beginning of 2004, when Microsoft published results from customer case studies evaluating the use of Windows vs. Linux under the name "Get the Facts" on its own web page. Based on inquiries, research analysts, and some Microsoft sponsored investigations, the case studies claimed that enterprise use of Linux on servers compared unfavorably to the use of Windows in terms of reliability, security, and total cost of ownership.

In response, commercial Linux distributors produced their own studies, surveys and testimonials to counter Microsoft's campaign. Novell's web-based campaign at the end of 2004 was entitled "Unbending the truth" and sought to outline the advantages as well as dispelling the widely publicized legal liabilities of Linux deployment. Novell particularly referenced the Microsoft studies in many points. IBM also published a series of studies under the title "The Linux at IBM competitive advantage" to again parry Microsoft's campaign. Red Hat had a campaign called "Truth Happens" aimed at letting the performance of the product speak for itself, rather than advertising the product by studies.

In the autumn of 2006, Novell and Microsoft announced an agreement to co-operate on software interoperability and patent protection. In the context of the virtualization was agreed upon to improve the exchange from Office documents and to simplify the Virtualization of the Enterprise solutions in each case under the competition product as well as the integration of Linux and Windows machines into a common directory structure to simplify. The patent protection planned at the same time that customers of Novell or Microsoft may not be sued by the other company for patent infringement. This patent protection was also expanded for non-free software developers. The last part was criticized because it only included non-commercial developers.

SCO

In March 2003 the SCO Group accused IBM of violating their copyright on UNIX by transferring code from UNIX to Linux. SCO claims ownership of the copyrights on UNIX and a lawsuit was filed against IBM. Red Hat has countersued and SCO has since filed other related lawsuits. At the same time as their lawsuit, SCO began selling Linux licenses to users who do not want to risk a possible complaint on the part of SCO. Since Novell also claims the copyrights to UNIX, it filed suit against SCO.

SCO has since filed for bankruptcy.

Trademark of the name

Linux is a registered trademark of Linus Torvalds.

Trademark rights

In 1994 and 1995 several people in different countries attempted to register the name Linux as a trademark. Thereupon requests for royalty payments were issued to several Linux companies, a step with which many developers and users of Linux did not agree. Linus Torvalds clamped down on these companies with help from Linux International and was granted the trademark Linux, which he transferred to Linux International. Protection of the trademark was later administered by a dedicated foundation, the non-profit Linux Mark Institute. In 2000 Linus Torvalds specified the basic rules for the assignment of the licenses. This means that anyone who offers a product or a service with the name Linux must possess a license for it, which can be attained through a unique purchase.

In June 2005 a new controversy developed over the use of royalties generated from the use of the Linux trademark. The Linux Mark Institute, which represents Linus Torvalds' rights, announced a price increase from 500 to 5,000 dollars for the use of the name. This step was justified as being needed to cover the rising costs of trademark protection.

In response to this increase, the community became displeased, which is why Linus Torvalds made an announcement on 21 August 2005, in order to smooth the waves and dissolve the misunderstandings. In an e-mail he described the current situation as well as the background in detail and also dealt with the question of who had to pay license costs:

And let's repeat: somebody who doesn't want to _protect_ that name would never do this. You can call anything "MyLinux", but the downside is that you may have somebody else who _did_ protect himself come along and send you a cease-and-desist letter. Or, if the name ends up showing up in a trademark search that LMI needs to do every once in a while just to protect the trademark (another legal requirement for trademarks), LMI itself might have to send you a cease-and-desist-or-sublicense it letter.

At which point you either rename it to something else, or you sublicense it. See? It's all about whether you need the protection or not, not about whether LMI wants the money or not.

Finally, just to make it clear: not only do I not get a cent of the trademark money, but even LMI (who actually administers the mark) has so far historically always lost money on it. That's not a way to sustain a trademark, so they're trying to at least become self-sufficient, but so far I can tell that lawyers fees to _give_ that protection that commercial companies want have been higher than the license fees. Even pro bono lawyers charge for the time of their costs and paralegals etc.

- Linus Torvalds

Chronology

* 1983: Richard Stallman creates the GNU project with the goal of creating a free operating system.

* 1989: Richard Stallman writes the first version of the GNU General Public License.

* 1991: The Linux kernel is publicly announced on 25 August by the 21 year old Finnish student Linus Benedict Torvalds.

* 1992: The Linux kernel is relicensed under the GNU GPL. The first so called "Linux distributions" are created.

* 1993: Over 100 developers work on the Linux kernel. With their assistance the kernel is adapted to the GNU environment, which creates a large spectrum of application types for Linux. The oldest currently existing Linux distribution, Slackware, is released for the first time. Later in the same year, the Debian project is established. Today it is the largest community distribution.

* 1994: In March Torvalds judges all components of the kernel to be fully matured: he releases version 1.0 of Linux. This version of the kernel is, for the first time, networkable. The XFree86 project contributes a graphic user interface (GUI). In this year the companies Red Hat and SUSE publish version 1.0 of their Linux distributions.

* 1995: Linux is ported to the DEC and to the Sun SPARC. Over the following years it is ported to an ever greater number of platforms.

* 1996: Version 2.0 of the Linux kernel is released. The kernel can now serve several processors at the same time, and thereby becomes a serious alternative for many companies.

* 1998: Many major companies such as IBM, Compaq and Oracle announce their support for Linux. In addition a group of programmers begins developing the graphic user interface KDE.

* 1999: A group of developers begin work on the graphic environment GNOME, which should become a free replacement for KDE, which depended on the then proprietary Qt toolkit. During the year IBM announces an extensive project for the support of Linux.

* 2004: The XFree86 team splits up and forms the X.Org foundation, which results in a substantially faster development of the X-Server for Linux.


This article was taken from: http://en.wikipedia.org/wiki/History_of_Linux

0 comments: