It's an exciting era in the Berkeley Software Distribution world; indeed, things started off with a litigious bang over a decade ago, but now BSD solutions are more varied than ever before and offer the user heretofore unprecedented choice and power. So many are the options today that it's time for a roll call from the various distributions. Each of the four major BSD projects are pushing forward with development and experiencing growth, diversifying the Open Source playing field's offerings Let's take a look at what each project is up to these days.
FreeBSD is in a precarious state. While it's almost hit critical mass in the corporate world, their latest growing pains have left potential adopters confused. The new FreeBSD 5 branch offers some exciting technology, generally regarded as comparable with or superior to what is offered in Linux. The FreeBSD foundation is still upgrading its FreeBSD 4.x line and suggesting its use for production environments over FreeBSD 5. The reasons for this are very simple—FreeBSD 5 won't be ready for prime time until FreeBSD 5.4 or 5.5—but users are left confused and timid.
FreeBSD's last major release, which now sits highly optimized at version 4.10, works just as well as always. For systems already running with FreeBSD 4.x that see no need to adopt the new technology in FreeBSD 5 or jump to Linux, this operating system is a godsend in stability and continued support. FreeBSD 4.11 is scheduled for a February '05 release, while plans for FreeBSD 4.12 are on the backburner should FreeBSD 5 not achieve -STABLE status by the fourth quarter of 2005. But what if you need the technology available in FreeBSD 5 and don't want to jump to Linux?
FreeBSD 5, currently available at FreeBSD 5.2.1 with FreeBSD 5.3 in late beta, tantalizes the BSD world with the culmination of several year's hard work and narrow escapes. Back in 2001, when Wind River bought BSD/OS (a closed-source BSD operating system owned by the now-defunct BSDI), FreeBSD users were promised a next-generation BSD made possible by crossing the ultra-robust corporate OS with its Open Source counterpart. While WindRiver let go of its plans leaving the future of FreeBSD in peril, the realization of its goal is almost here thanks to the FreeBSD community and Apple Computer, Inc.'s contribution of FreeBSD code.
That almost is a killer, though, in that it now causes potential users to look for modern operating system features elsewhere until FreeBSD 5 is blessed as stable. Given FreeBSD's track record and the corporate sponsors now behind its operating system, however, it has a bright future ahead of it despite these stumbling blocks. Sadly, the same can't be said for its two little brothers, NetBSD and OpenBSD.
NetBSD's claims to fame aren't its optimization or secure code—it's instead known for running on a wider variety of platforms than any other operating system out there, including Linux. NetBSD's binary releases include support for an amazing 40 platforms and an additional 12 platforms in the source code. In other words, it runs on everything but the kitchen sink. NetBSD forked from the 386BSD/4.4 BSD merger in 1993 and continued on its own in parallel to FreeBSD since then, albeit at a slower pace. It's currently at version 2.6.1, with aggressive testing on the new NetBSD 2.0 promising fruition by the first half of 2005.
Those familiar with NetBSD swear by it, though its use in serious environments is limited. It is not secure and device driver support is paltry at best. NetBSD's true usefulness comes in providing developers of other operating systems—such as FreeBSD, OpenBSD, and Linux—with hardware support to base their own new ports off of. For instance, much of the code for the PowerPC FreeBSD port comes from NetBSD. OpenBSD implemented support for AMD64 by means of hefty imports from the NetBSD source tree, and Linux runs on Motorola's ColdFire processor family thanks to the work previously for NetBSD's port.
Though it's the unsung hero of the BSD family and Linux, you can safely ignore NetBSD unless you have old or obscure hardware or are looking to port your operating system project to new hardware. Its desktop and production applications are so limited as to be nonexistent and this isn't likely to change even after NetBSD 2.0 is released.
Forking from NetBSD in 1995 after a very heated—and embarrassing—personal argument, OpenBSD's one and only focus is to offer security. Every line of code is hand-audited and, as the site claims, there hasn't been a hole in the default install on over seven years. Striking a balance in hardware support somewhere between FreeBSD and NetBSD, OpenBSD runs on very few platforms and even then only in single-processor mode. Sticking with Intel and compatible chips is a safe bet as its Alpha and PowerPC ports are still in their infancy.
OpenBSD is updated every three or four months and doesn't experience the major upheavals that FreeBSD is confronting now: When OpenBSD is updated, there is no question as to whether or not it's secure or ready for production. Oftentimes it stands in on a general computer to emulate a specific network device, though in a highly secure fashion. If you're in the market for a firewall, OpenBSD can make an aging Pentium system do the job better than pricier hardware. OpenBSD isn't acceptable as a desktop system or 3D workstation, however.
One factor that mars OpenBSD's fair weather is its primary developer, Theo de Raadt. This individual is known to be highly unstable and even destructive at times. OpenBSD's very birth, as noted above, is owed to one of his infamous tantrums and many users have been flamed off the Internet due to his bad moods and compulsive control issues. Though excellent for network equipment, developers may wish to remain wary of this platform and its creator.
Apple Computer, Inc.'s Darwin operating system is now the most widely-shipped UNIX in the world, with a user-base of over 10 million strong and growing. The current platform has been out for over a year with Darwin 7.5 corresponding to Mac OS X v10.3.5. Darwin 7.6 will be released before 2005 with another one or two follow-ons before Darwin 8 goes live, which has been in development since last January.
Darwin 8.0b1, the first beta for Apple's next Mac OS X release, shows many improvements over Darwin 7. First and foremost, it includes 64-bit memory addressing and optimizations for Apple processors going back all the way to the PowerPC G3. Many of its libraries and userland will be synced with FreeBSD 5.2, while also enhancing Linux API compatibility and support for AMD64.
Other points of improvement are symmetric multi-threading (SMT), NetBSD and OpenBSD binary support, next-generation on-the-fly file de-fragmentation, integration of TrustedBSD security hooks, support for Java 1.5, XHTML 2.0 and CSS 3.0, and a myriad of minor improvements sure to make thousands of developers and end-users happy. Clearly, Darwin is the most inclusive and feature-complete BSD—and, indeed, UNIX—out there.
With so much going on with Darwin, it might be hard to realize that it's not right for everyone. There are certain groups who might not be happy with it. Developers, for instance, have expressed frustration over how fast Apple's evolves its operating system, which makes it hard to create applications that run on more than one version of Mac OS X. Corporations are still waiting for Mac OS X to stand still for a while before they adopt, being leery to play the upgrade game every year.
Another point of contention is hardware support. While Darwin supports the PowerPC G3, G4 and G5 processors and all of Apple's motherboards and other devices, it only runs on Intel's Pentium Pro, Pentium II, Pentium III and Pentium 4 families. Darwin 8 will fix this, with support for AMD chips, but it could be as long as eight more months off. In the longer-term, expect major upgrades to come slower, thus allaying corporations' fears. The future burns brightly for Apple's Darwin BSD.
The Deal With the Demons
If you're looking for a software solution in the Berkeley Software Distribution family, you won't be disappointed. All four major projects are continually updated and developed whether you need a general workstation solution, network security, hardware development, or a desktop operating system. The BSD world has never looked brighter than now and each project is geared for major upgrades in the near future, guaranteeing a continuity of utility in the years to come.