wiki/articles/linux.md
2025-02-10 18:32:20 -03:00

2.1 KiB

Linux

Linux is a Unix-like almost libre kernel created in 1991 by Linus Torvalds. Famously he announced it on Usenet where he just called it "a side project" and not something "professional". After being released, Linux grew quickly and became the defacto kernel of the GNU project, as Hurd wasn't ready yet and 386BSD couldn't be released earlier due to legal issues regarding its source code. Linux wasn't affected by this because it was an independent, clean room implementation of Unix (similar to Minix, the system Linus took inspiration from).

Unlike the BSDs, Linux is not a full operating system on its own so it is coupled with userland tools, most commonly GNU or Busybox to form a fully functional operating system. This is also the origin of whether to call it GNU/Linux or just Linux (but it wouldn't apply to non-GNU distros like Alpine).

Being Linux a monolithic kernel, this made it prone to bloat and indeed it got bloated, with device drivers having the most lines of code in the entire kernel source tree. Since these drivers run on ring 0, it adds a huge attack surface, including the fact that a failing driver can crash the whole system. It has almost 400 syscalls for each architecture.

By default and being strict, Linux is not fully free as it contains binary blobs (a form obfuscated proprietary software) for device drivers. Projects like Linux-libre remove such blobs, making Linux fully free software.

Another issue is the forced inclusion of Rust into the kernel (but as of writing this, 2025, it appears to be failing) and subsequently the forced removal of seasoned kernel developers in basis of them being "old" and "refusing" to learn Rust. SystemD is another issue on its own, pushed by Red Hat and other tech corporations.

A tarball with the source of the first version, 0.01 can be found here: https://mirrors.edge.kernel.org/pub/linux/kernel/Historic/.

See Also