Copyright (c) 2000-2001 by Rich Morin
published in Silicon Carny, November 2000
BSDCon 2000 was held recently (October, 2000) in Monterey, California. Rich and his spouse Vicki Brown attended; here are their impressions of the event, along with some useful BSD lore.
If you have been reading my columns for a while, you already know that I am a confirmed BSD (Berkeley Standard Distribution) bigot. I used SunOS from its inception in the early 80's until long after Sun had declared it dead. I then switched to FreeBSD (using Mac OS as my GUI) and haven't regretted my decision in the least.
So, I am happy to report that the BSDs (BSD/OS, Darwin, FreeBSD, NetBSD, and OpenBSD) are all alive and prospering, with ever-increasing technology and user bases. And, although there are fundamental differences in the projects' goals and approaches, cooperation among the groups is steadily increasing.
BSDCon 2000 bore evidence of this cooperation, including speakers from every part of BSD, as well as some folks (e.g., Keith Bostic, Mike Karels, Kirk McKusick) whose BSD background goes back to the famed Computer Science Research Group (CSRG) of UC Berkeley.
As noted above, there are five major variants of BSD. These differ in a number of respects, including audience, licensing, and goals. Consequently, a brief review may be in order.
BSD/OS is the (somewhat) proprietary product of BSDi (www.bsdi.com). Specifically, BSDi restricts some of their enhancements to Source-licensed customers, while making others available to the BSD community. In line with this, BSDi provides both binary-only and binary/source distributions.
Because BSD/OS is aimed at large-scale commercial users, it features commercial support, some proprietary packages, and advanced features such as Symmetric Multiprocessing (SMP). BSD/OS pricing is correspondingly commercial, ranging from $175 for a single-user Binary License to $4995 for a Source License for use by unlimited users.
Darwin is the (almost) free product of Apple (www.apple.com). It is a bit harder to describe, but here's a rough overview. Darwin is an adaptation of technology from several Open Source projects (e.g., Apache, FreeBSD, GNU, Mach, and NetBSD), supplemented with some innovations such as the I/O Kit, Apple's new, object-oriented driver framework.
Although the Darwin source code is available at no charge, it is not freely redistributable. Specifically, users are required to comply with certain rules. Richard Stallman has written a critical analysis ("The Problems of the Apple License") detailing the limitations of the Apple license; see www.gnu.org/philosophy for this and many other thought-provoking essays.
It is unclear what the audience of Darwin will be; my suspicion is that it will consist mostly of technically-oriented Macintosh users who will use it in conjunction with Mac OS X. In short, these folks may not ever run Darwin as a separate entity.
On the other hand, there doesn't seem to be anything that would prevent an interested party from porting Darwin to another PowerPC box or a PCI-based processor card. Once this was working well, a copy of Mac OS X could be installed on top of it.
The other BSDs (FreeBSD, NetBSD, and OpenBSD) are completely free, in terms of their licensing. Their "university-style" licenses allow users to examine, modify, redistribute, and use the systems with almost no legal restrictions.
FreeBSD is the work of The FreeBSD Project (www.freebsd.org). It is a robust, full-featured, and highly-polished system, well suited to the needs of beginning to advanced users on small (e.g., CFCL) to immense (e.g., Yahoo!) sites.
FreeBSD also has a huge and well-supported collection of ports (pre-configured source code) and packages (installable binaries) of add-on software. There are more than 4000 entries in the FreeBSD Ports Collection (www.freebsd.org/ports); each of them installs with a minimum of pain and strain.
With the recent merger of BSDi and Walnut Creek CDROM (FreeBSD's historic sponsor), FreeBSD has a chance to adopt interesting parts of BSD/OS. For example, FreeBSD's kernel developers are adapting parts of BSDi's SMP technology to FreeBSD. Some joint development efforts are also in the works.
FreeBSD is a great solution for Intel x86 machines, but its support for other platforms is (ahem) limited. If you need to support other machines, you should take a look at NetBSD. Be warned, however; the typical NetBSD user is a seasoned hacker. If you are unable (or unwilling) to Read The Fine Manual, I would counsel you to leave NetBSD alone.
NetBSD is the work of The NetBSD Project (www.netbsd.org). The principle goal of NetBSD is portability; NetBSD runs on an incredibly wide range of CPU architectures: alpha, amiga, arc, arm26, arm32, atari, bebox, cobalt, hp300, hpcmips, i386, luna68k, mac68k, macppc, mmeye, mvme68k, news68k, newsmips, next68k, ofppc, pc532, pmax, prep, sgimips, sparc, sparc64, sun3, vax, and x68k.
The NetBSD developers have achieved this portability through a combination of hard work and careful planning. For instance, the same source code base is used to build the entire spectrum of hardware architectures. Consequently, NetBSD's design and coding techniques have been generalized to support multiple platforms.
The NetBSD binaries also avoid the use of features (e.g., instructions and addressing modes) that only show up on some processor models. As a result, a NetBSD binary should work on any machine that has the right architecture, regardless of the particular processor model.
OpenBSD is the work of The OpenBSD Project (www.openbsd.org). The OpenBSD developers want their system to be "secure by default". To this end, they perform detailed code inspections, do extensive testing, and distribute their code from Canada (to avoid brain-damaged US export regulations on cryptographic software).
On the down side, OpenBSD does not always ship the latest versions of system software. After all, code inspections and testing take time. Still, if you want a solid machine to serve web pages (and fend off idle hands), OpenBSD may be just the ticket.
The Electronic Frontier Foundation
As noted below, neither the conference itself nor the obligatory trade show was particularly large. There were some interesting booths at the trade show, however. In particular, I enjoyed chatting with the lady at the Electronic Frontier Foundation (www.eff.org) table.
If you aren't familiar with the work of the EFF, you should be. They are a powerful force for liberty in cyberspace, engaging in legal initiatives, lobbying, and more. Several governments (including my own) are working diligently to "rein in" the Internet; the EFF is chartered to keep it free and open.
One of the EFF's most interesting projects, orchestrated by John Gilmore, was an amazing techno-political hack. As detailed in "Cracking DES" (O'Reilly, 1998, ISBN 1-56592-520-3), the DES Cracker demonstrated the feasibility of building a special-purpose machine to crack the DES (Data Encryption Standard).
The FBI's Louis Freeh testified in Congress that DES was all but invulnerable to attack. A few months later, the EFF's $250K machine (reproducible in 1998 for under $50K) cracked the code in about a day of run time. After that, a combined effort of the Cracker and volunteer machines on the Internet reduced the time to less than 10 hours.
Given that assorted government agencies (and even large companies) have vast resources to spend on cryptanalysis, it is quite clear that far more powerful DES Crackers could be created. In short, the EFF demonstrated two things.
First, DES is not effective as a privacy tool. Second, our government either doesn't know this or (more likely) doesn't want us to know it. Universal adoption of strong cryptography, after all, would hamper the FBI's snooping activities (e.g., the Carnivore system).
If you care about protecting your civil liberties (e.g., the ability to use strong cryptography to protect your privacy), you really should support the EFF!
Small is Comfortable
Anyone who was expecting the hordes of LinuxWorld (to say nothing of Comdex) would be very disappointed with the size of BSDCon 2000. On the other hand, size isn't everything. The three tracks offered plenty of diversity and the speakers (with the possible exception of myself) were all conversant in their subject matter.
Walking the hallways and sitting in BOFs, I was able to chat with old friends and meet new ones. All told, the recent conference was a fine way to learn the recent history, current status, and future directions of the BSD community.
More generally, many things about BSDCon 2000 bode well for the future of the BSD community. Unlike last year's FreeBSD conference, BSDCon 2000 explicitly included the entire BSD community. Both in the talks and in the trade show, attendees were able to hear a range of perspectives.
It was also clear that BSDi (the show's sponsor) is trying very hard to "play nicely" with the rest of the community. Like many other computer-related companies, BSDi is reinventing itself to meet the new world of Open Source.
At the same time, the BSD community is adapting itself to meet changing conditions. All told, it's a great time to be a BSD user; come join the fun!
About the author