The History of FreeBSD: From 386BSD to a Modern Unix
How FreeBSD began in 1993 as a patchset for a struggling hobbyist Unix, who started it, and why it exists as a separate project from NetBSD and OpenBSD.
FreeBSD didn’t start as a plan to build a new operating system — it started as an attempt to keep an existing one alive. Its origin is a story about patching, coordination, and a naming decision made in the middle of 1993, and it explains a lot about why FreeBSD looks and behaves the way it does today.
The starting point: 386BSD
In the early 1990s, William and Lynne Jolitz ported Berkeley’s BSD Unix (specifically the Net/2 release from UC Berkeley’s Computer Systems Research Group, CSRG) to Intel 80386-based PC hardware, calling the result 386BSD. It was one of the first fully functional, freely available Unix-like operating systems that could run on affordable home-class hardware — a genuinely significant milestone at the time.
386BSD’s development, however, stalled. Patches, bug fixes, and driver updates from the growing user community weren’t being integrated into the official source tree quickly, and an unofficial “386BSD Patchkit” emerged to collect and distribute the accumulated fixes the Jolitzes weren’t merging.
From patchkit to project
By early 1993, the patchkit itself had become difficult to manage — the volume of unmerged changes was growing faster than the two-person team behind 386BSD could handle. Nate Williams, Rod Grimes, and Jordan Hubbard — the last three coordinators of the Patchkit — decided the better path forward was to fork: take the accumulated patchkit, apply it to a clean copy of 386BSD, and maintain the result as an independent, properly coordinated project rather than a pile of unofficial patches waiting on someone else’s tree.
Choosing a name
The name FreeBSD was chosen on June 19, 1993 — emphasizing that the system was freely available and freely redistributable, in the same spirit as the Free Software Foundation’s own naming conventions, while being clear about its BSD lineage rather than presenting itself as something entirely new.
The first release
The first version of FreeBSD was released in November 1993. It carried forward 386BSD’s Intel-PC focus but under active, coordinated maintenance — regular releases, a real community process, and a development model that could actually absorb contributions instead of leaving them stranded in a patchkit.
Why FreeBSD, NetBSD, and OpenBSD are separate projects
FreeBSD isn’t the only BSD descendant with roots in this same period — NetBSD was founded slightly earlier in 1993 by a different group prioritizing portability across many hardware architectures, and OpenBSD split from NetBSD in 1995 over disagreements about development access and a renewed focus on security auditing. All three continue to share code and ideas today, but each optimizes for a different set of priorities: FreeBSD has generally emphasized performance, ZFS/storage capability, and server/workstation use; NetBSD emphasizes running on almost anything; OpenBSD emphasizes code auditing and security-by-default.
From a rescued patchkit to today
Three decades later, FreeBSD is still developed under essentially the same collaborative model the 1993 fork was meant to enable: a coordinated source tree (long since migrated from CVS to Subversion to Git), a formal ports collection for third-party software, and a predictable release cadence documented on the FreeBSD Project’s own release engineering pages. The project’s continued existence — and the fact that it still ships regular numbered releases rather than fragmenting into unofficial patchkits again — is a direct, functioning answer to the exact coordination problem that led Williams, Grimes, and Hubbard to start it in the first place.
Sources: FreeBSD — Wikipedia, 386BSD — Wikipedia, About the FreeBSD Project — FreeBSD Documentation Archive