|< Free Open Study >|| |
The phrase "Linux Continuum", is not from a science fiction book nor is it a bizarre cultist rite. Rather, it is really just a way of describing the overall state of the software that collectively becomes a Linux system. A lot of software packages from a lot of different sources go into a Linux system. All this software isn't just out there growing on a tree or falling like manna from heaven. It's actually out there growing on a million different trees, and the real manna is sometimes hidden under mud and grime. It can be hard work hunting down all this software and cobbling it together into a usable system. This is what Linux vendors do, and the end result is a distribution.
The vast majority of software packages aren't written explicitly to become part of a particular Linux distribution. Because of this, at any given time, each of these software packages has its own version, and even its own versioning scheme. For example, at the time of this writing the current version of the emacs editor is 21.2, while the current stable version of XFree86 is 4.2.0.
Figure 3-1 depicts how a distribution is really just a sampling (or a "snapshot") of the larger overall continuum of Linux software. You can see from this figure how Red Hat Linux 7.3 is made up of a number of different packages, each with its own version. Obviously, Red Hat Linux consists of far more packages than just the few shown in Figure 3-1; however, it does show three important software packages:
XFree86 implementation of the X Window System
The Linux kernel
Figure 3-1: Example software continuum
Each of these packages has its own version history, release cycle, etc. Red Hat Linux, meanwhile, constructs its distribution from particular versions of the software. The three packages represent an example continuum, while Red Hat Linux represents a snapshot. In this case, Red Hat Linux 7.3 shipped with XFree86 4.2.0, Linux 2.4.18, and KDE 3.0. Remember that this is a snapshot of the continuum and doesn't (usually) change over time; Red Hat may choose the latest version of a package available at the time it was released, but later versions may be released after Red Hat has released their own snapshot.
A Linux distribution is a collection of software that makes up a Linux-based operating system. Because each of the software packages in a distribution has its own independent version, the version number that a vendor assigns to its distribution does not bear any relationship to the versions of the software packages which comprise it.
If all these various software packages and versions are starting to get blurred together in your mind, that's great, because it's the perfect way to view things. You really can view the state of open source software as one great big "space" of software and version numbers: a continuum. This continuum is constantly evolving and changing, as individual software packages develop and change versions. What a vendor calls a production-quality release is really just a snapshot taken of this continuum at one particular instant.
The responsibility of a vendor is to craft the snapshot so that the overall system is as useful, flexible, and bug-free as possible. Vendors do this by first identifying which software packages are going to go into the distribution at all, and then selecting the most recent stable version of that software that meets their goals.
|< Free Open Study >|| |