3 ms·
Linux the OS is actually the Linux kernel + userspace software, and those pieces are built independently. With the BSDs, the team is building the userspace and
by danieldk 6y ago
Linux the OS is actually the Linux kernel + userspace software, and those pieces are built independently. With the BSDs, the team is building the userspace and kernel together. You end up with a small, well-designed system that fits together nicely.
That's a blessing and a curse. While the BSD approach leads to more consistency, the Linux approach allows the ecosystem to move faster. In BSD projects, progress is often hampered, because proposals to drastically change subsystems is met with inertia, and then nothing happens. In Linux the inertia is there, but nobody stops people from implementing an alternative implementation, because the pieces are relatively decoupled, and then convince distributions to adopt the replacement.
This is why Linux ecosystem went from System V init -> Upstart -> systemd. Similarly, X11 -> Mir/Wayland -> Wayland (although Wayland could be adopted as a default on BSDs as well). Or chroot -> LXC -> Docker (or more generally cgroups + user namespaces). Although controversial (every change leads to some controversy), technically systemd and Wayland are substantial improvements to their predecessors.
Of course, the downside is that the integration is left to the distributors and the documentation may be inconsistent or uneven.
---
Another thing to take into accounts when looking at BSDs is that the BSDs have far fewer contributors than the Linux ecosystem. So, you might find that it lacks basic things such as 802.11ac support (though there has recently been movement in FreeBSD again) or support for the newest GPUs.