Confused about what "Linux" means
I've heard people say that Linux is a misnomer. Supposedly, the operating system is not Linux, Linux is just a part of it called a kernel, and the operating system should be called something else.
But other than times when people are pointing this out, everyone seems to say "Linux" and mean the operating system. Even this site is called Linux. All the distros call themselves "Linux". When choosing an OS, the options are always Windows, Mac, Linux. So why do people say the OS is not called Linux? Does this "kernel" actually matter?
I'm looking for a summary overview about the terminology, not an in-depth technical review of the architecture.
2 answers
The term "Linux" means the kernel but is often used as shorthand for "Unix-style operating system running on Linux (the kernel)".
The reason this is significant is that the kernel is by far the most complex part of the OS. Writing one is a multi-year or multi-decade project.
Unix-style OSs (ca 1990) were typically a kernel and a bunch of small programs that interconnected easily using kernel services (the "userland"). Each of these programs was pretty easy to rewrite and maintain so most of them already had free implementations available. But it wasn't until Linus Torvalds released an initial (semi-)working kernel that the whole thing could be used as a FOSS operating system on PCs.
(As to the GNU/Linux thing, yes, a lot of the userland came from the GNU project, as did the development tools. But even in the mid-90s, enough people were annoyed at Stallman's GNU/Linux thing that it was a truism that everything GNU could be replaced. Today, there are a few GNU-less Linux distros around.)
0 comment threads
Richard Stallman wants you to use GNU/Linux to refer to the combination of OS and kernel that people typically call Linux. I am not a Stallman partisan one way or the other, but I think noting his complaint is informative in this context. I have emphasized the sentence of the excerpt below where he describes what Linux does.
Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called “Linux,” and many of its users are not aware that it is basically the GNU system, developed by the GNU Project.
There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine's resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called “Linux” distributions are really distributions of GNU/Linux.
Many users do not understand the difference between the kernel, which is Linux, and the whole system, which they also call “Linux.” The ambiguous use of the name doesn't help people understand. These users often think that Linus Torvalds developed the whole operating system in 1991, with a bit of help.
GNU has had a project for on their own kernel called "Hurd," since 1990, though it only became usable in 2015 or so. I think even now it's not really recommended for stable environments.
It's also worth noting that you can also use the Linux kernel without GNU. For example, Android is a non-GNU Linux.
0 comment threads