Born Free, As Free as the Wind Blows
You've probably guessed by now that this article is going to head towards discussing Linux - but Linux is far from the only free Operating System. OpenBSD, NetBSD, FreeBSD, GNU/HURD, as well as a whole bunch of "hobby" operating systems, exist. At time of writing, our very own HEXUS.net was running FreeBSD, with the free Web server Apache, and more than likely the free database MySQL. The common feature with most of these FOSS OS's is that they try to follow a set of standards laid out in the 1980s called POSIX, designed to make interaction between different UNIX mainframes easier. A program designed on one POSIX system can usually be compiled (turned from source code to a standalone program) on another POSIX system with little or no changes to the source. This is what leads to a large number of applications available for multiple free operating systems (such as Apache on the BSD systems, as well as on Linux).It's also worth noting that Linux, on its own, is not an Operating System, it's what is called a kernel - the "brain" of an OS. The Linux kernel needs to be combined with several hundred little utilities - such as a text editor, command interpreter, etc - within a POSIX environment, to be considered a working Operating System. Almost all of these utilities are part of the GNU project, by a group named the Free Software Foundation, or FSF for short. These utilities, from Acct to Zebra, combine with the Linux kernel to provide the GNU/Linux Operating System.
Getting a working GNU/Linux system from scratch is a little tricky - which is why hundreds of groups, companies, individuals and thinkers have created a market for what are called Linux distributions - installable, specialised Linux systems to help take the sting out of getting started with the OS. Each Linux distribution (or distro) attempts to bring something different to the table, and it is quite common for somebody to take an existing distribution and modify it to better suit their needs, rather than start again. The idea of distributions is well established in the Windows world; Windows XP Home and Windows XP Professional are both distributions of Windows based on the Windows NT 5.1 kernel. Windows Server 2003 comes in four common flavours, all based on NT 5.2, Windows 2000 on NT 5.0. The average Linux distribution will include a basic functioning system and a selection of different software to install.
Everyone reading this is likely to know how to install a Windows system, add extra drivers, install extra software, so how is this done under Linux? Somewhat differently.