I know that I talk about Linux a lot, so today I’m going to talk about BSD instead.
But what exactly is BSD? If you’ve spent enough time in the Unix world you’ve probably heard about it. BSD was originally a derivative of the AT&T Unix operating system, sharing much of the original code. BSD stood for “Berkeley Software Distribution”. Today BSD is commonly used to refer to BSD derivatives, such as FreeBSD, OpenBSD and NetBSD which are considered to be very closely related to the original Unix.
You’re probably thinking that these BSD derivatives are starting to sound a lot like Linux, but that’s where you’re wrong. BSD and Linux are very different right from the ground up and this is mainly due to the communities that support their respective projects. In the Linux world there are many distros to choose from, each offering a different set of applications, tools and services, and each with a different idea of what is important in an operating system. This is because Linux itself is not an operating system, but more just the engine that powers it. All of the modern BSD distributions have the same general idea of what they believe is important in a base operating system, even if they disagree in what should go over the top, the icing on the cake, the extra applications that add the extra functionality.
The BSD descendants also kept most of the original codebase from BSD, which in turn kept much of Unix’s original codebase. This means that these BSDs are one of the closest descendants to the original Unix. They use sh, the Bourne Shell for God’s sake.
But why? A guy named Matt Fuller once wrote:
“BSD is what you get when a bunch of Unix hackers sit down to try to port a Unix system to the PC. Linux is what you get when a bunch of PC hackers sit down and try to write a Unix system for the PC.”
This really sums up the difference between Linux and BSD. One is not better than the other, they are just different, the developers have different beliefs in what is important and what isn’t and the users have different beliefs in how they should interact with the operating system.
Now, I have been trying out FreeBSD for a while and I personally can’t see a use for it. It just seems like too much of a hassle for one user. Building for source has it’s advantages and disadvantages, but this is not a place to discuss it. What I am referring to is the rawness of the system. It really is not for beginners, but having said that the documentation is rather extensive and relatively easy to understand if you have some experience with a Unix based system. I can imagine why people would like it, because it is so much more faithful to the original structure of Unix, I just can’t understand the point of it, but then again, I am a Linux user, who came from Windows.
I could ramble on for hours about every single difference, but this post is already getting way too long. So, I advise you to read Matt Fuller’s article on Linux and BSD and see if you can discover the purpose of BSD.