Unix and Linux operating systems

image

Share of top500 computers by OS

The benefits of Unix/Linux include:

  1. A stable OS structure: You can use a Unix-like OS very much the same way people did in the late 1960s. Graphical interfaces on top have changed (as well as the implementation under the hoods) but the way to use a terminal (nowadays a virtual one) through a command shell as well as the basic system library functions (more on these topics later) have not changed. This means that it will be very likely that the software you write will be still usable in 40 years (and 40 years old software is still usable today) without many changes, if any at all, in most cases. Also, and very importantly, no-one strictly speaking owns Linux, and it will keep being around as long as users and developers will keep using it.
  2. Portability: The software you write/download can be used on a wide range of Unix-based machines, without (too much) hassle. This includes your laptop as well as multimillion pound computing clusters.
  3. Plenty of resources: The amount of freely accessible software, in particular free software where you have access to the source code (and can modify it to your needs) is simply staggering, and so are resources (forums, HOWTOs, online courses, code repositories for development). You can find almost anything you need to perform advanced computer simulations, analyse your data and present them.
  • There are several OSs based on Linux or variants of Unix. But wait. We said that Unix and Linux are OSs! Well, the same name is used to describe several things. To be correct, Linux is an OS kernel, a piece of software that handles memory, decides when and which programs need to be given time to run on the CPU, and collects the drivers for your devices (hard disks, keyboard, mouse, ...).
  • On top of the kernel, one needs software libraries that implement basic facilities (like opening, reading and writing files) that are device-independent. In this way you can open and write a file calling the same code, regardless whether this file is on a hard-drive, on a USB device, etc. This is the role of the GNU C library, or, glibc.
  • GNU (the recurrent acronym GNU's Not Unix) is a collection of more than 300 software programs and libraries (including the glibc discussed above) that constitutes the core of a Linux based OS, also known as a Linux distribution.

There are several ways to try out a linux distribution. The next page will deal with this.


Left: schematics of an OS layer structure; Center: Tux, the Linux mascotte; Right: the GNU logo. Do not let the peaceful, good-natured look of Tux trick you into thinking that Linux is a toy OS.