GNULinux History


GNU/Linux History

The history of GNU/Linux is actually two separate stories that came together to produce a world-class operating system. Richard Stallman created an organization to build a UNIX-like operating system. He had tools, a compiler, and a variety of applications, but he lacked a kernel. Linus Torvalds had a kernel, but no tools or applications for which to make it useful.

Note  

A controversial question about GNU/Linux is why it s called GNU/Linux , compared to the commonly used name Linux . The answer is very simple. Linux refers to the kernel (or the core of the operating system), which was initially developed by Linus Torvalds. The remaining software ”the shells , compiler tool chain, utilities and tools, and plethora of applications ” operate above the kernel. Much of this software is GNU software. In fact, the source code that makes up the GNU/Linux operating system dwarfs that of the kernel. Therefore, to call the entire operating system Linux is a misnomer, to say the least.
Richard Stallman provides an interesting perspective on this controversy, which is covered in his article, Linux and the GNU Project [Linux/GNU04].

GNU and the Free Software Foundation

Richard Stallman, the father of open source, began the movement in 1983 with a post to the net.unix-wizards Usenet group soliciting help in the development of a free UNIX-compatible operating system [Stallman83]. Stallman s vision was the development of a free (as in freedom) UNIX-like operating system whose source was open and available to anyone .

Even in the 1970s, Stallman was no stranger to open source. He wrote the Emacs editor (1976) and gave the source away to anyone who would send a tape (on which to copy the source) and a return envelope.

The impetus for Stallman to create a free operating system was the fact that a modern computer required a proprietary operating system to do anything useful. These operating systems were closed and not modifiable by end users. In fact, until very recently, it was impossible to buy a PC from a major supplier without having to buy the Windows operating system on it. But through the Free Software Foundation (FSF), Stallman collected hundreds of programmers around the world to help take on the task.

By 1991, Stallman had pulled together many of the elements of a useful operating system. This included a compiler, a shell, and a variety of tools and applications. Work was underway in 1986 to migrate MIT s TRIX kernel, but divisions existed on whether to use TRIX or CMU s Mach microkernel . It was not until 1990 that work began on the official GNU Project kernel [Stallman02].

The Linux Kernel

Our story left off with the development of an operating system by the FSF, but development issues existed with a kernel that would make it complete. In an odd twist of fate, a young programmer by the name of Linus Torvalds announced the development of a hobby operating system for i386-based computers. Torvalds wanted to improve on the Minix operating system (which was widely used in the day) and thought a monolithic kernel would be much faster than the microkernel that Minix used. (While this is commonly believed to be true, operating systems such as Carnegie Mellon s Mach and the commercial QNX and Neutrino microkernels provide evidence to the contrary [Montague03].)

Torvalds released his first version of Linux (0.01) in 1991, and then later in the year he released version 0.11, which was a self-hosted release (see Figure 1.2). Torvalds used the freely available GNU tools such as the compiler and the bash shell for this effort. Much like Thompson and Ritchie s first UNIX more than 20 years earlier, it was minimal and not entirely useful. In 1992, Linux 0.96, which supported the X windowing system, was released. That year also marked Linux as a GNU software component.

Linux, much like the GNU movement, encompassed not just one person but hundreds (and today thousands) of developers. While Torvalds remains one of the top maintainers of Linux, the scope of this monolithic kernel has grown well beyond the scope of one person.

Note  

From Figure 1.2, it s important to note why the released minor version numbers are all even. The even minor number represents a stable release, and odd minors represent development versions. Since development releases are usually unstable, it s a good idea to avoid them for production use.

click to expand
Figure 1.2: Linux development timeline [Wikipedia04].

Bringing It Together

The rest, as they say, is history. GNU/Linux moved from an i386 single-CPU operating system to a multiprocessor operating system supporting many processor architectures. Today, GNU/Linux can be found in large supercomputers and small handheld devices. It runs on the x86 family, ARM, PowerPC, Hitachi SuperH, 68K, and many others. But even with this achievement, BSD still garners the most architectures supported.

GNU/Linux has evolved from its humble beginnings to be one of the most scalable, secure, reliable, and highest performing operating systems available. GNU/Linux, when compared to Windows, is less likely to be exploited by hackers [NewsForge04]. Considering Web servers, the open source Apache HTTP server is far less likely to be hacked than Microsoft s IIS [Wheeler04].




GNU/Linux Application Programming
GNU/Linux Application Programming (Programming Series)
ISBN: 1584505680
EAN: 2147483647
Year: 2006
Pages: 203
Authors: M. Tim Jones

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net