Linux
This
is primarily for beginners but will feature more advanced stuff as time
goes by.
What is Linux?
Linux is a UNIX like operating system (aka OS) for computers, written initially by a Finnish student called Linus Torvalds in 1992 and then with the assistance of a small band of hackers via the Internet. Today, thousands of programmers collaborate voluntarily or are paid by their employers to work on Linux.
An operating system is the piece of software that sits between the raw hardware of the machine and the user applications like word processors, spread sheets and games. Think of Windows and Mac OSX, the operating system provides an environment for the user to interact with the machine and for applications to run in. Linux itself is in fact only the operating system kernel. The kernel is the inner most part of the OS which provides memory, process and filesystem management and device drivers for hardware peripherals like mice, keyboards, soundcards and other devices. Device drivers are small software programs that provide a usable interface to the bare hardware itself. The rest of the Linux OS is made up of software written by other groups of people to provide a usable system. Much of this software is produced by a free software organisation called GNU and as such Linux is sometimes referred to as GNU/Linux to acknowledge the work of GNU, but for the sake of ease of use, it is safe to refer to the entire system as Linux.
So what's UNIX?
UNIX is a group of operating systems based on the original UNIX developed by Ken Thompson and Dennis Ritchie of AT&T, the American telecom company in the 1960s. At the time, AT&T were a regulated monopoly and weren't allowed to be in the computing business and so UNIX was developed as a scientific study to produce a vast multi-user computer operating system. As they weren't allowed to sell UNIX, it was licensed free of charge to universities, complete with the source code. Source code is the programming language code that makes up the software. UNIX became incredibly popular very quickly and gained a massive following within the academic community. As the years went by, people made their own additions to UNIX as they had the freedom to do so and a few derivatives appeared, most notably the Berkeley Systems Distribution (BSD) from the University of California at Berkeley.
In 1984, AT&T was broken up by the US government and was then free to demand a fee for UNIX, they released several commecrial versions of UNIX before selling it on to Novell and who later sold it on to the Santa Cruz Operation (SCO).
UNIX had 2 basic principles. Firstly, everything is a file. That is that UNIX sees everything on your computer as a file, your word processing documents, your web browser program files and even all devices attached to the computer are created by the OS as files so that they are easily manipulated. The second is that the system is made up of small simple tools to each fulfill one particular purpose, but do it well. By using these small programs together, you can do very complicated things.
When AT&T began selling UNIX, the BSD version continued to be developed although separately from the original UNIX, now known as UNIX System V. UNIX was originally developed for large powerful computers, but with the birth of the IBM compatible PC, using the Intel processor, demand grew for a PC version of UNIX.
A version of BSD was developed to fill the gap but the BSD group were then sued by AT&T and forced to purge their system of any AT&T code. This case stalled the progression of the project, at this time, Linus Torvalds had recently bought a new PC and was looking for a version of UNIX to run on it. At the time there were 3 main choices, BSD which was in the midst of the AT&T court case, the Hurd which was being developed by GNU but way off completion and Minix, which was a miniature UNIX for PCs written by Andrew Tanenbaum; author of several excellent and highly authoritive books on OS design and networking; as an academic teaching system. Minix was the most viable option but Tanenbaum's refusal to include features which many were desperate for, so as not to over-complicate his teaching operating system made Minix an unsuitable long-term solution.
As a hobby, Linus began writing a small Minix clone of his own but never intended it as a professional system. The development of the Internet offered the opportunity for many who felt similarly frustrated by the lack of a suitable PC UNIX to collaborate on such a project to offer assistance to Linus who released his project freely for inspection and improvement. Shortly after, as the project, now called Linux began to develop into a usable system, Linus adopted the GNU's GPL license so that the source code may be freely distributed and users may alter it to their own needs, but must return any alterations back to Linus.
So who are GNU and what is the GPL?
In the 1970s, Richard Sallman was a student at the Massachusetts Institute of Technology (MIT) and later became employed in their AI Labs. Here there was a special atmosphere of collaboration and the sharing of ideas and source code. The atmosphere collapsed in the early 1980s when several of the most talented programmers were hired away from MIT and the community died. Desperate to recreate it, Richard Stallman started the GNU project to produce and share software freely. Despising proprietary software as contrary to that spirit of freedom to share, he set about creating and entirely new OS where the source code could be freely shared and distributed, the only clause being that any changes had to be submitted to the original author, thereby ensuring the continuing freedom of the code. This code was free in terms of speech, in so much as you could modify it in any way you wished, unlike that of commecial software and free as in beer, meaning that it could be freely passed around for no cost. It was however acceptable to request a fee for handling, so that people were not out of pocket for producing disks. This allowed the software to spread quickly a people could recoup the cost of reproducing it on disks if they so wished. To this end Stallman wrote a software license called the General Public License or GPL to ensure that these rights were maintained as the software was distrubuted.
Stallman's plan was to write an entire UNIX-like OS from scratch that would be free under the terms of the GPL. He wrote most of the small utilities first, initially alone and later with the assistance of other like minded programmers. This group became known as the GNU which recursively stands for GNU's Not UNIX. The OS was to be known as the Hurd, but stalled at the kernel stage due to Stallman's rigid design goals. With an almost complete OS bar the kernel, the rest of the PC UNIX world waited for many years with baited breath for the rest of the system and in fact are still waiting. Some 20 years on, the Hurd kernel is still incomplete.
This complete OS save for the kernel is what spurred Linus to write his Minix clone which became Linux. By writing Linux to be POSIX compliant, Linus was able to utilise an entire OS of tools. It pertinent to note that GNU had an entire free OS but lacked a kernel, Linus had a kernel but needed tools to help him create it at a time when BSD was tied up and Minix was functionally restricted. This coincidence of circumstances not only encouraged Linus to write Linux but also made Linux the major attraction it was. It is because of this combination GNU tools with the Linux kernel that the GNU request people call the Linux operating system GNU/Linux.
At this time, the Linux kernel is still developed over the Internet by several thousand contributors both voluntary and paid by organisations to work on Linux. Linux is not owned by any compnay, it is still overseen by Linus Torvalds and distributed freely.
Didn't find what you wanted eh?


If you really need help try joining your local Linux User Group, thats what they are for - asking questions and giving and requesting assistance from your peers. There are lists for the UK at http://www.lug.org.uk/ and worldwide at http://www.linux.org/
Click here to go home, or here to go back to Linux.
Home | About Me | Computing | Debauchery | Links | Filthy Downloads | Help | Interviews | Legal | Prague | Stuff