Short Bytes: Linux and BSD are two open source operating system families inspired by the 20th-century operating system Unix. Several things set the two apart like hardware support, development philosophy, etc. Also, Linux is more popular than BSD.
When you start to get out of the Windows ecosystem, the very first thing you see is macOS. But, chances are less that you may go for it, mostly because of the price tag. Moving further, you come across Linux flaunting its open source badge. Most people confuse Linux as an operating system and it has been a topic of controversy for a long time. Thus, some people refer a Linux operating system as GNU/Linux.
Soon, you start realizing how diverse is the Linux ecosystem with numerous Linux distributions and their derivatives. You almost believe that Linux and its family is the representative of the open source community. But there is a lesser-known family of operating systems known as the BSD (Berkeley Software Distribution), which also counts as one of the major names in the open source community.
Difference between Linux and BSD
The biggest difference between Linux and BSD is that Linux is a kernel, whereas BSD is an operating system (also includes the kernel) which has been derived from the Unix operating system. The Linux kernel is used to create a Linux Distribution after stacking other components. Combine Linux kernel with GNU software and other components and you’ve got Linux ‘operating system.’ In the case of BSD, the makers create the complete operating system.
Both Linux and BSD families have their representative or mascots. For Linux, it is Tux who is a penguin. There are stories related to how Tux became the Linux mascot and how he got its name.
BSD Daemon or Beastie, a cute-looking demon cartoon, is the face of the BSD family.
Choices in Linux and BSD
For Linux users, there are an uncountable number of distributions available. All of these are the derivatives of some popular Linux distributions including Debian, Gentoo, Red Hat, Slackware, etc. In addition to these, there are many standalone Linux Distributions like Solus, Puppy Linux, etc.
BSD operating system itself is defunct now, but it is used to refer existing family of BSD derivatives. The current BSD ecosystem revolves around three primary operating systems namely FreeBSD, OpenBSD, NetBSD; along with DragonFly BSD and other distributions. Out of these, FreeBSD is aimed at normal users and accounts for around 80% of the BSD installations.
If you are thinking that BSD is a lesser known name, macOS (earlier Mac OS X), the operating system present on Apple machines, is also a closed source descendant of the BSD family.
There are derivatives available for FreeBSD, NetBSD, etc., but their number falls short in comparison to Linux distributions.
Applications for Linux and BSD
Applications for Linux are delivered in form of pre-compiled binary packages. Deb and RPM are the two main formats used for these packages which can be installed using package managers like APT, yum, pacman, etc.
The story is different in the case of FreeBSD where Ports are used to install applications on the operating system. There are currently more than 25,000 ports available in the FreeBSD Ports Collection.
Unlike the packages in Linux, these FreeBSD Ports contain the source code which needs to be compiled on the machine. This doesn’t make FreeBSD comfortable for normal users. However, precompiled binary packages – installed using pkg – have started to increase in numbers.
BSD has a scarcity of applications. Its developers have tried to control the situation by creating Linux compatibility package to run Linux applications on BSD.
There is one thing to note. Before you start considering FreeBSD as some other world thing, you would be satisfied to know that it also supports popular desktop environments like GNOME, KDE, etc and many other applications available for Linux.
UNIX Connection of Linux and BSD
It is a common notion that most of the operating systems existing in today’s world are in some sense related to the Unix. Unix was a closed source – yeah, you saw it correct – an operating system developed at Bell Labs (now Nokia Bell Labs) using Assembly language. Later, major parts were rewritten in the C programming language whose single letter name is much talked about.
BSD (a closed source OS) and its derivatives are the direct descendants of Unix. Unlike its ancestors, FreeBSD, NetBSD, etc. are open source operating systems.
Linux kernel and the distributions based on it live in a different hierarchy. Linux (when tagged as an OS) behaves similar to UNIX and that’s why it is called Unix-like operating system. Linux doesn’t have any direct connection to Unix.
The Linux kernel was created by Linus Torvalds who is still a one man army controlling what goes in and out of the kernel during its development.
Linux and BSD Hardware Support
Open source operating systems are deprived of proper hardware support. Microsoft Windows and Apple macOS are ones to take the lead in this race. Whether it’s the latest processor or a powerful graphics chip, these proprietary operating systems enjoy the treat way before Linux and BSD.
If we talk about the limited hardware goodies – in comparison to Windows – the Linux-based open source operating systems have an upper hand as they have started to witness a lovely gesture from various hardware vendors. BSD is far left behind and its can’t expect that some fresh chopped salad would be delivered on its table.
GPL and BSD License
Another main difference between Linux and BSD is the license they are protected with. Linux comes under the Free Software Foundation’s GPL (GNU General Public License). The operating systems based on BSD are licensed under the BSD License (known as FreeBSD License).
GPL promotes Richard Stallman’s thinking that software should be made free, in the sense of freedom, by making it accessible to everyone. That’s why GPL makes it mandatory for a person to release the source code to the public if he/she uses the license.
BSD License, on the other hand, doesn’t make it compulsory to disclose the source code. It is up to the creator whether he/she wants to make the code open source or not.
“If it ain’t broke, don’t fix it.”
BSD believes in this thinking. It is rarely possible that any ultra-modern feature will appear on BSD until there is a need to do so. For Linux, some distributions try to include the best and latest.
Also, that’s the reason why BSD operating systems are considered as reliable and stable.
If I talk about the common public, Linux is more visible on their machines in comparison to FreeBSD. That’s because FreeBSD requires a user to be more tech savvy and Linux has better hardware support. Another reason might be the larger number of people supporting Linux over BSD.
BSDs are better known for their reliability and find their place on server machines and embedded systems. Also, BSD has the capability to run binaries designed for Linux but the reverse is not true.
It’s hard to point one of the two as better because both of them have their own set of pros and cons.
If you have something to add, tell us in the comments below.
Also Watch: Which Linux Distribution Is Best For Me?