4 ms·
Here's a much bigger one that takes lots of Unix variants into account: https://www.levenez.com/unix/unix.png https://www.levenez.com/unix/unix.png (from here [
by lobster_johnson 10y ago
Here's a much bigger one that takes lots of Unix variants into account: https://www.levenez.com/unix/unix.png https://www.levenez.com/unix/unix.png (from here [1]). Also available as a big PDF.
Edit: Updated with newest version.
[1] https://www.levenez.com/unix/ https://www.levenez.com/unix/
- tiffanyh 10y agoWow, looking at the family tree above - I can't help but think how this has fractured the BSD development community. Unlike Linux, with has a viral license which essentially forces people to work on the same code base - BSD doesn't, which from a technical standpoint causes way more forking and less contributions back to a main tree.
- kryptiskt 10y agoHow would a GPL license have prevented any split between the open source variants of BSD? Why would it have made Theo happy to stay with NetBSD? Also, Linux have longstanding forks, the Android kernel and the real-time tree to take two prominent examples.
- tedunangst 10y agoGPL, dude. It solves all the problems.
- na85 10y agoThere seems to be a large(ish?) portion of the free software community that devotes a large amount of its time and energy to handwringing and general agitating about licenses. I really don't get it: Companies are routinely shown to be ignoring GPL and other licensing with zero consequence and your average computer user probably doesn't even understand the concept of a source code license. Does anyone really think that if OpenBSD had some GPL'ed code in there, and $company was taking that code and distributing it closed-source, that there would be any consequences whatsoever? If so, why does this never make the news? If not, then why do these people bother?
- tedunangst 10y agoOne of the reasons I like BSD license as an author, philosophy aside, is there's simply much less policing involved.
- lobster_johnson 10y agoI don't think the situation is that different. Linux being the kernel, there are lots of "Linux distros", some of which are almost as different from each other as FreeBSD and NetBSD. For example, consider the many package managers (deb, rpm, Nix, etc.), init systems (SysV, Upstart, Systemd, etc.), graphical environments, etc. The BSDs have a different philosophy where the kernel and userland go together as one package. Linux distros reuse the same kernel and rely on GNU for many tools, but are otherwise free to do their own thing, just like the BSDs. I doubt the GPL is what really keeps Linux together. Rather, since the Linux kernel is developed separately from everything else, and is such a huge thing, there's little incentive to fork the kernel along with userland. You develop a new userland (as with Android) and keep the kernel.
- bluejekyll 10y agoIt's not entirely accurate to say the Linux kernel wasn't forked. There are many distros that manage a separate kernel from the standard releases and backport individual changes, RHEL is an example of this. Now it's not exactly accurate to call this a fork either b/c they do eventually catch up... but still, lots of non-standard kernels out there.
- digi_owl 10y agoI dunno. Linux the kernel may be singular, but the userland is trying its level best to recreate the Unix wars...
- kibwen 10y agoWikipedia has a lovely visualization of the Linux distro family tree: https://en.wikipedia.org/wiki/Linux_distribution#/media/File:Linux_Distribution_Timeline.svg https://en.wikipedia.org/wiki/Linux_distribution#/media/File...
- hvs 10y agoThere really hasn't been that much forking. FreeBSD, NetBSD, OpenBSD, DragonFlyBSD and Darwin being the only existing operating systems. On top of that, they are complete operating systems with a user environment and kernel. You can't directly compare them to "Linux" which is only a kernel. You could more accurately compare them to Linux distributions (FreeBSD <=> Ubuntu). When looked at that way, the "fractured" community looks less like BSD and more like Linux.
- Esau 10y agoI don't think it is proper to consider Darwin a BSD fork. My understanding is that it is a Mack kernel with elements borrowed from BSD.
- yjftsjthsd-h 10y agoIt's not a "fork" per se, but it is reasonable to describe Darwin as a member of the BSD family tree, descended largely from FreeBSD. My understanding, based on my memory and the [Wikipedia page](https://en.wikipedia.org/wiki/XNU https://en.wikipedia.org/wiki/XNU) is that the XNU kernel was built out of Mach, but then had 4.3BSD grafted on to provide a normal-looking UNIX API, which was later upgraded using FreeBSD. But it isn't a normal BSD, certainly; Darwin still shows its Mach heritage in the way it does process management and message passing.
- JdeBP 10y agoConsider this one case study in the similarities of XNU, FreeBSD, and OpenBSD: * http://unix.stackexchange.com/a/350824/5132 http://unix.stackexchange.com/a/350824/5132
- notalaser 10y ago> Linux, with has a viral license which essentially forces people to work on the same code base If this were so, my life would be so much easier. Maybe things are like this on higher-end servers, in DevOps and so on, but the other side of Linux deployment -- in embedded systems, consumer hardware, various gizmos, phones and so on -- it's very much not true. Virtually no device that's actually being sold somewhere runs a vanilla Linux kernel when you take it off the shelf. Companies comply with GPL technically -- they publish their changes and they'll even mail you the CD if you ask nicely -- but there's no community work of any kind, really. Sometimes you'll have manufacturers working with funky hardware from obscure companies that never bothered to update their drivers past 2.6.32 (or, best case scenario, 3.2) and the forward-porting dance begins -- that is, if you're lucky and the driver isn't a binary blob. Sometimes the opposite happens -- you're working with shiny new stuff but a Really Smart Manager heard that older kernels are more stable and now the backporting from 4.10 to 3.16 dance begins. The "same codebase" thing is pretty much just a distant dream now -- and you don't want to see most of the codebases out there. Granted, there is a common(-ish) core -- the differences are not on the magnitude of FreeBSD vs. OpenBSD (different vmm systems etc.), but IRL, there's rarely a "single" Linux. Edit: oh, and don't even get me started on all the innuvashon that happens in the layers above the kernel.