Happy 20th Birthday, FreeBSD
mbadolato writes "FreeBSD celebrates its 20th birthday this week. On 19 June 1993, David Greenman, Jordan Hubbard and Rod Grimes announced the creation of their new fork of the BSD 4.3 operating system, and its new name: FreeBSD." And in the time since then, FreeBSD hasn't exactly stood still; it's spawned numerous other projects (like DragonFly BSD and PC-BSD), as well as served as the basis for much of Mac OS X; there's even a Raspberry Pi build.
Given enough time, Netcraft will confirm...
Trolling is a art,
I've been using it since about 1998 to serve web pages. Solid product, thanks for all the hard work people.
'I don't know what it's called. I just know the sound it makes, when it takes a man's life.' ~ Four Leaf Tayback
FreeBSD is a great example of open source working. Not only has it been successful, but it has spawned a lot of other open source projects such as GhostBSD, PC-BSD, DesktopBSD, DragonFly, pfsense, freenas, nanobsd, and my own MidnightBSD.
There are a lot of people who have donated a lot of time to FreeBSD. This wouldn't have happened without all the committers and folks offering patches to the project. FreeBSD and all the other projects I mentioned wouldn't be here without the. Thanks!
MidnightBSD: The BSD for Everyone
We might be talking about FreeBSD as we do Linux these days.
"To those who are overly cautious, everything is impossible. "
Let's explode that myth. Here's what actually happened. Linux distributions such as Slackware back then supported booting from a floppy into the OS so that one could run the rest of the userland from a hard drive. That meant one could preserve Microsoft Windows booting yet run Linux at the same time with no risk. I cannot stress how important a feature that was back then to someone like me, back when PCs were very expensive and had to be shared among family members. The FreeBSD developers took a different tack. Their OS was for grown-ups, for servers. They openly mocked on their mailing lists the feature of being able to boot into the OS from a floppy drive. (Note this is different from being able to INSTALL from floppy, everyone back then could do that.) The FreeBSD developers CHOSE to not be popular.
Hmmm.. last used for any length of time: FreeBSD 2.2.2 with FVWM95 (serial mouse!), back in '00 or thereabouts. (At the time, FreeBSD was reliable; Linux was not. Corel Linux--remember that, anyone? Urg. Red Hat? flaky, at the time. Mandrake Linux: slightly less flaky.)
But the culture hasn't changed much, from a recent scout-round. I'd say your impression is correct. Here are some random thoughts:-
*BSDers will say *BSD is more like "real Un*x", but as far as I can tell the OS has been riddled with schisms since the '70s. The "real Un*x" is a nostalgic fantasy (or an artefact of Stockholm syndrome, take your pick).
*BSDers will say *BSD is reliable. That hasn't been a problem for Linux for a decade. (Except for Intel's video drivers...grrr.)
Differences...apart from being behind the times hardware-wise (which you can do with Centos 4, if you want), the main difference is: only one "distro". (Although there are a few derivatives of FreeBSD and NetBSD, only their creators use them, pretty much.) BDSM submissives enjoy OpenBSD; no-one'd dare fork it.
The FreeBSD man pages were better. Way better, as I recall. That's in part because they tried to avoid all that dubious GNU stuff. Can't say they were wrong about info(1), but I can say they were wrong about make(1).
Filesystems. Linux and *BSD have *FAT*, NTFS, and ZFS in common. That's about it. FreeBSD has had ZFS for a couple of years longer than Linux.
Culture. For a long time the *BSDs' attitude was "compile it from source, and fix the dependencies yourself". Like combining the bad parts of old-time Slackware and Gentoo. Might be better now; I've only tried Live CDs.
Startup: I like the rc.conf startup configuration approach. (Way better than System Five initscripts. "Fragile" hardly begins to describe that approach.) I used Arch Linux for a long time because it had the closest approximation to rc.conf, but it also had drivers for USB and stuff. You know, the hardware I had attached to my PC. Not much, back in the day; but I wanted to use it. Arch was a pretty good compromise.
Now, Arch Linux has moved away from an rc.conf-ish approach to using systemd. I've been getting progressively more annoyed with all the Sieved Poots appearing in linux, so I recently tried PC-BSD, which is supposed to be an end-user friendly porcelain on top of FreeBSD. Unfortunately, it's dire. Bug after glitch after missing object. On both my PCs, the typography is eyewatering. Worse than Windows 3.11.
You're better off with FreeBSD. I might be going back there soon. Probably, though, it won't have support for my USB wifi stick. If you never see me comment again, you'll know what's happened.
The reason I switched for FreeBSD around 2001 is that in-kernel sound mixing Just Worked. Two apps could write to /dev/dsp and get working sound. I'm now writing this while watching a DVD on the FreeBSD box connected to my projector and 5.1 surround sound system and I didn't need to do any configuration.
The other big difference is ZFS, which makes a huge difference to how you manage storage. Creating a new volume is as easy (and fast) as creating a new directory. You get compression, deduplication, constant-time snapshots, and a load of other things via a very easy administration interface.
If you're doing development work or running servers, jails give you a way of deploying a complete system that's got almost the same isolation as a VM but with much lower overhead. With ZFS, you can create one stock install and then clone it into a new jail in a few seconds.
The base system is maintained as a whole and the developers take the principle of least astonishment (POLA) seriously. User-visible changes are minimised and new configuration utilities are expected to follow the pattern of existing ones.
For firewalling, there are a number of choices, but the most sensible is probably the fork of OpenBSD's pf, modified to have better SMP scalability.
For security, there's the MAC framework, which is roughly equivalent to SELinux, that the sandboxing on OS X and iOS are based on, and also Capscium, which provides a capability model that is better suited to application compartmentalisation. An increasing number of the system daemons use Capsicum for privilege separation.
That's probably most of the user-facing things. You'll notice that GPU drivers (except for the nVidia blobs) tend to lag Linux somewhat. For Intel it's not so bad, for AMD it's quite a way behind (catching up, but not there yet).
I am TheRaven on Soylent News