Learn something new every day
More Info... by email
Source code is a term used to refer to the file or files containing the actual lines of programming instructions written by programmers for software they develop. Linux® is the name of the source code written by Linus Torvalds, who developed the kernel of the Linux® operating system. Those programming instructions are called Linux® source code. The term is also sometimes loosely, but incorrectly, used to refer to the source code of applications developed to be run under Linux® but that are not the kernel themselves. A kernel is an extremely complex piece of software that acts as the manager of processes that occur within an operating system, and users hardly ever interact directly with the kernel, which is the core or "heart" of the system.
Torvalds released Linux® source code under the GNU General Public License, making it available free of charge via download. Although most open-source software is free of charge by download, the term "open source" does not necessarily mean that there is no fee attached to a software program; rather it indicates the legal freedom not only to view the program's source code but also to modify it into custom software. Users of the Linux® operating system who are not programmers very rarely download Linux® source code, because it has to be compiled, which can be a daunting task for someone who is new to the principles and steps involved in the compilation of software.
There are differences between Linux® source code and a Linux® operating system, also known as a distribution or simply a "distro." Linux® source code is just the management part of the system, whereas a distribution includes a kernel bundled with programs that interact with and are managed by that kernel, providing users with a way of taking advantage of the power of the manager. Those who are interested in using a Linux® distribution need only to download that particular operating system without any concern about Linux® source code. Many people use Linux® operating systems every day to handle their personal and business computing needs with high automation and ease of use without any understanding at all about what Linux® source code is.
The Linux® kernel contains instructions needed by various pieces of hardware on which the system will run. This includes code for the central processing unit, which is the "brain" of a computer; the motherboard; and other hardware. Computer programmers who are interested in developing their own "flavor" of Linux® can download Linux® source code and other utilities that are also open-source files, and those programmers can legally begin creating a new distribution that they could offer free of charge or for a fee. Almost all Linux® distributions, however, are offered free of charge via download.
What is revolutionary about Linux is that the source code is both open source and totally free. That has led to a lot of variations -- or distros -- of Linux from organizations that have taken the free source code, have put their particular spin on it and have developed more flavors of Linux than you can shake a stick at.
Linux is different in that a common source code is shared by all distros, but so many custom distros of Linux are available that just about anyone can find one to fit their particular needs. That is not true in the Windows and Mac OSX worlds.