DEV Community

Douglas R Andreani
Douglas R Andreani

Posted on • Edited on

But, what the heck is Linux?

On a recent article, I explored the possibility to move your workflow to Linux, but without covering too much the elephant in the room.
What the heck is Linux?

In the beginning, it was UNIX

Back to late 60’s, two developers from Bell Labs (an AT&T subsidiary at that point), decided to create an operating system that was capable of serving more people at a time. So by the year 1969, Dennis Ritchie (who also developed the C programming language) and Ken Thompson created Unix: a multi-user system designed for the PDP-8.
For many years Unix was the state of the art for enterprise computing and mainframes.

Late in the 80’s, the Unix system was the inspiration by University of Berkeley researchers to create BSD and with the introduction of 32bit processors by Intel on 1985, led the scientist and professor, Andrew S. Tanenbaum, to create MINIX. An OS suited for academic use to complement the book published by himself (Operating Systems: Design and Implementation).

By 1991 the highly adopted book by Tanenbaum became the motivation for the student of the University of Helsinki, Linus Torvalds, to develop what later will become the Linux Kernel (first major release on 1994).

Linux as Free Software

By its first release, there was no proper free licensing to the kernel itself. By using the tools from the GNU Project (mainly the GNU Bash Shell) by the American activist Richard Stallman.

Later in 1992, Linus started to consider the adoption of the GPL (GNU Public Licensing) for its project with a proper release by 1993.

Later in the year 1999, the licensing was moved to the GPLv2 and later he refused to move to the new GPLv3

Today Linux is everywhere

You may not notice it, but Linux is everywhere around you. From your Android device to the server that delivers your internet content. Within the Windows 10 subsystem to the International Space Station.

Linux became part of our lives. The work from the Linux Foundation to create and maintain a stable, reliable and powerful OS made the internet and will continue to shape our future into a brighter path.

You are free to choose wherever OS fits your needs but be aware that at some level you will bump into the most loved/hated kernel of all time.

References:

Top comments (6)

Collapse
 
codemouse92 profile image
Jason C. McDonald

Before anyone says it, no, it is NOT called GNU/Linux. That is the official statement on the part of Linus Torvalds himself. GNU can call their own version GNU/Linux, just as Canonical can call theirs Ubuntu, but GNU is only one of hundreds of projects which donated significant core pieces of the Linux operating system. They have no more right to name the entire family of OSes than the other hundred or so involved projects.

Thus, a "Linux" OS is any operating system which uses the Linux kernel. That is the only official recognized name for the whole family of operating systems.

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

Firstly, I agree.

However, there are some nuances to the original argument that made it less ridiculous than it may seem at first. The primary toolchain was GCC, in particular with GLIBC. Unlike say Win32, glibc defined the standard of shared libraries and dynamic linking on early Linux OS's. The kernel was not complete, in the sense that it didn't handle typical user space programs or programming languages.

It was the set of GNU tools that provided the full abstraction needed to compile and run programs on it. For the typical Linux OS the GNU parts were integral and central to having a working OS. That is, Linux wasn't comparable to say Windows as an OS, but GNU/Linux was.

This is still true of desktop Linux's today, like Ubuntu. The user-space ABI is still defined by the GNU toolchain. This is of course not the only possible use of Linux, and you can use it on systems without the GNU tools (I don't know which do this, perhaps embedded systems). Also notable is that the LLVM project now is close to replacing all of the original GNU tools.

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

Yes, you are correct, and that's a really good way of describing the significance of their technical contribution. Still (as you know), there were a few other pieces the OS needed to truly replace Windows that GNU did not provide - BASH and X.org being two - but the operating system definitely would not be what it is today w/o GNU.

Interesting that you bring up LLVM. Linux's "cousin", FreeBSD, is in the process of swapping their entire toolchain out from GNU to LLVM, quite successfully so far.

Thread Thread
 
andreanidouglas profile image
Douglas R Andreani

I'm honestly thinking to move for a period to FreeBSD just to see the cons and pros even because I enjoy the BSD license better than the GPL

Collapse
 
Sloan, the sloth mascot
Comment deleted
Collapse
 
codemouse92 profile image
Jason C. McDonald

Well, if it has a NetBSD kernel, it's NetBSD. You are referring to a port - basically, the upper parts of the operating system, what is collectively known as "Debian", remained the same, but the lower parts were swapped out to use a different kernel. Therefore, it is a Debian, but not a Debian Linux.