<!-- $Id: history.sgml,v 1.12 1995/12/29 01:27:38 jkh Exp $ -->
<!-- The FreeBSD Documentation Project -->

<sect><heading>A brief history of FreeBSD<label id="history"></heading>

<p><em>Contributed by &a.jkh;</em>.

The FreeBSD project had its genesis in the early part of 1993,
partially as an outgrowth of the "Unofficial 386BSD Patchkit" by the
patchkit's last 3 coordinators: Nate Williams, Rod Grimes and myself.
David Greenman and Julian Elischer were also lurking in the background
around this time, though they didn't come fully into the project until
a month or two after it was more or less officially launched.  Our
original goal was to produce an intermediate snapshot of 386BSD in
order to fix a number of problems with it that the patchkit mechanism
just wasn't capable of solving.  Some of you may remember the early
working title for the project being "386BSD 0.5" or "386BSD Interim"
in reference to that fact.

386BSD was Bill Jolitz's operating system, which had been up to that
point suffering rather severely from almost a year's worth of neglect.
As the patchkit swelled ever more uncomfortably with each passing day,
we were in unanimous agreement that something had to be done and
decided to try and assist Bill by providing this interim "cleanup"
snapshot.  Those plans came to a rude halt when Bill Jolitz suddenly
decided to withdraw his sanction from the project and without any
clear indication of what would be done instead.

It didn't take us long to decide that the goal remained worthwhile
even without Bill's support, and so we adopted the name "FreeBSD",
which was coined by David Greenman.  Our initial objectives were set
after consulting with the system's current users, and once it became
clear that the project was on the road to perhaps even becoming a
reality, I contacted Walnut Creek CDROM with an eye towards improving
FreeBSD's distribution channels for those many unfortunates without
easy access to the Internet.  Walnut Creek CDROM not only supported
the idea of distributing FreeBSD on CD but went so far as to provide
the project with a machine to work on and a fast Internet connection.
Without Walnut Creek CDROM's almost unprecedented degree of faith in
what was, at the time, a completely unknown project, it is quite
unlikely that FreeBSD would have gotten as far, as fast, as it
has today.

The first CDROM (and general net-wide) distribution was FreeBSD 1.0,
released in December of 1993.  This was based on the 4.3 BSD Lite
("Net/2") tape from U.C. Berkeley, with many components also provided by
386BSD and the Free Software Foundation.  It was a fairly reasonable
success for a first offering, and we followed it with the highly successful
FreeBSD 1.1 release in May of 1994.

Around this time, some rather unexpected storm clouds formed on our
horizon as Novell and U.C. Berkeley settled their long-running lawsuit
over the legal status of the Berkeley Net/2 tape.  A condition of that
settlement was U.C. Berkeley's concession that large parts of Net/2
were "encumbered" code and the property of Novell, who had in turn acquired
it from AT&amp;T some time previously.  What Berkeley got in return was
Novell's "blessing" that the 4.4 Lite release, when it was finally
released, would be declared unencumbered and all existing Net/2 users
would be strongly encouraged to switch.  This included us, and we were
given until the end of July 1994 to stop shipping our own Net/2 based
product.  Under the terms of that agreement, we were allowed one
last release before the deadline and that became FreeBSD 1.1.5.1, the
culmination of our year's work with Net/2 and generally considered by
many to be a significant project milestone for stability and general
performance..

We then set about the arduous task of literally re-inventing ourselves
with a completely new and rather incomplete set of 4.4 Lite bits.  The
"Lite" releases were light in part because Berkeley's CSRG had removed
large chunks of code required for actually constructing a bootable running
system (due to various legal requirements) and the fact that the Intel
port of 4.4 was highly incomplete.  It took us until December of 1994
to make this transition, and in January of 1995 we
released FreeBSD 2.0 to the net and on CDROM.  Despite being still
more than a little rough around the edges, the release was a
significant success and has since been followed by the more robust and
easier to install FreeBSD 2.0.5 release in June of 1995.

<em>Where to from here?</em>

We just released FreeBSD 2.1.0 on November 19th, 1995 and, by all
accounts, people are pretty happy with it.  We'll therefore continue
with the 2.1-STABLE branch of FreeBSD (which actually began with 2.0.5)
well into Q1 of 1996 with at least one additional release:
FreeBSD 2.1.1.

A 2.1.2 release may follow 2.1.1, though this will depend heavily on the
status of FreeBSD 2.2 in Q2 of 1996.  2.2 is our development branch,
where long term projects for everything from NFS v3 to PCCARD support
are currently taking place.  Preliminary timelines suggest that development
in 2.2 will begin slowing down and early release engineering simulations
(2.2 SNAPshots) started in Q1 of 1996.  Given a favorable prognosis for 2.2's
general health, a migration to 2.2 will then begin in early Q2 of '96 and
a new 2.3 branch created for next-generation development.  Around the
time that 2.2-RELEASE is produced (late Q2 1996), the 2.1.x lineage will
also be phased out.

We also intend to focus on any remaining areas of weakness, like documentation
or missing drivers, and steadily increase the overall quality and feature set
of the system well into 1996 and beyond.

Now might also be a good time to note that the development of FreeBSD is
<em>not</em> a closed process, despite some popular misconceptions to the
contrary, and anyone is free to contribute code or ideas.  Once a contributor
has established a reasonable track record for reliability, we generally, in
fact, give them write access to the project's CVS repository, where their
changes can propagate automatically to other users of FreeBSD.  Our
centralized development model is designed for the convenience of the
<em>users</em> of FreeBSD, who are thereby provided with an easy way of
tracking one central code base, not to keep potential contributors out!
Individuals who've shown a consistent and significant dedication to the project
are even often asked to join the FreeBSD core team to help in setting
the project's overall directions and goals, so truly no part of the project
is closed to additional members.  All we ask of those wishing for closer
ties to this project is some of the same dedication its current members have
to its continued success!
