3 ms·
You are misunderstanding. It actually makes a huge difference. Let's compare apples to apples: Ubuntu vs. FreeBSD. In Ubuntu there is a kernel made by one gro
by umanwizard 8y ago
You are misunderstanding. It actually makes a huge difference.
Let's compare apples to apples: Ubuntu vs. FreeBSD.
In Ubuntu there is a kernel made by one group (the Linux project), a bunch of userland tools and C compiler made by another group (the GNU project), desktop environment made by the GNOME project, etc. etc.
Whereas FreeBSD is just FreeBSD. It is one project, in one source tree, maintained by one group of people. (The biggest exception to this is the C compiler -- it is a third-party project which gets imported into the main tree. But that's a minor thing compared to Ubuntu which does this for everything.)
- laumars 8y agoThat's not really the best of examples because the C compiler and desktop environments are not part of FreeBSD's base system, let alone developed by FreeBSD devs. In that regard Ubuntu and FreeBSD are similar. I'd have probably gone with init daemons, ABIs and other core systems. Maybe mention how some of the base CLI tools differ (eg GNU has slightly different flags and rules for ordering them for `cp`, `find`, `ps`, etc). FreeBSD is a bit of a gateway drug in that it's the most like GNU of all the BSDs. Had you use OpenBSD as your point of comparison then the differences would have been easier to describe. But ultimately you're always going to get some cross-pollination across all the POSIX platforms (eg GNU/Linux uses OpenBSD's OpenSSH; FreeBSD has a bunch of GNU tools; and all of the above platforms will run most DEs, Apache projects, etc). That's a good thing though - it was the point of POSIX. I just wish there wasn't so many differences with syscalls - but that's moan about a very specific problem I'm having on a current hobby project.
- Koshkin 8y ago> the C compiler Or any desktop environment, for that matter, or much of everything else of any importance for the end user.
- laumars 8y agoThis is literally what I just said. Including the desktop environment example.
- umanwizard 8y agoThe C compiler is in fact part of the FreeBSD base system (if it weren't, you would need to install a port just to update from source. You don't.) You are right that it's one of the few pieces that is developed outside the project (and periodically imported into the tree). It is, on the other hand, fully supported. Bugs in the C compiler are considered bugs in the OS and will be fixed. I don't need a desktop environment or care about having one, so it not being part of the core OS doesn't bother me. I'll copy-and-paste my thoughts on why I like FreeBSD from an earlier comment I made: "Every one I have used installs the source code to the entire OS in /usr/src and make it very easy to change and recompile the system. On the BSDs I mentioned, if you don't understand how something works or you want to fix some bug, it's usually pretty easy to go find the source code, read it and learn how it works, and fix it. On most Linux-based OSs you would have to go figure out which random organization makes the component that has a bug (Linux project for the kernel, GNU for a lot of utilities, zillions of others for everything else), figure out how to download and build the source and install it into your distro (which is probably totally unsupported since your distro will expect to be using RPMs or DEBs rather than random stuff installed from tarballs...) This is the most salient feature of the modern pc BSDs to me. It's impossible to describe how different it feels to be truly in control of your system and understand/change it however you want."
- laumars 8y agoPreaching to the choir there; im a fully paid up FreeBSD contributor and use it on several personal systems. It’s a great platform to use :) The reason I brought the DE into the equation was simply because it was being compared against Ubuntu. I don’t really think Ubuntu is the best case study there either to be honest but I’m just following on from the post that preceded me.