| |
|
Domain Registration -
Domain registration & domain search service from just
$5.95/year only |
|
|
|
Webhosting Service -
Webhosting service for single or multiple domain names at affordable price. |
|
|
Back to Index
|
The following section provides some background information on the project, including a
brief history, project goals, and the development model of the project.
Contributed by Jordan Hubbard.
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.
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 was not 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 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 without any clear indication of what would be done instead.
It did not take us long to decide that the goal remained worthwhile, even without
Bill's support, and so we adopted the name ``FreeBSD'', 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 toward 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 also 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.3BSD-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 the 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&T some time previously. What Berkeley got in return was Novell's
``blessing'' that the 4.4BSD-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 FreeBSD, and the project was given until the end of July 1994 to
stop shipping its own Net/2 based product. Under the terms of that agreement, the project
was allowed one last release before the deadline, that release being
FreeBSD 1.1.5.1.
FreeBSD then set about the arduous task of literally re-inventing itself from a
completely new and rather incomplete set of 4.4BSD-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 the project until
November of 1994 to make this transition, at which point it released FreeBSD 2.0 to
the net and on CDROM (in late December). Despite being still more than a little rough
around the edges, the release was a significant success and was followed by the more
robust and easier to install FreeBSD 2.0.5 release in June of 1995.
We released FreeBSD 2.1.5 in August of 1996, and it appeared to be popular enough
among the ISP and commercial communities that another release along the 2.1-STABLE branch
was merited. This was FreeBSD 2.1.7.1, released in February 1997 and capping the end
of mainstream development on 2.1-STABLE. Now in maintenance mode, only security
enhancements and other critical bug fixes will be done on this branch (RELENG_2_1_0).
FreeBSD 2.2 was branched from the development mainline (``-CURRENT'') in November
1996 as the RELENG_2_2 branch, and the first full release (2.2.1) was released in April
1997. Further releases along the 2.2 branch were done in the summer and fall of '97, the
last of which (2.2.8) appeared in November 1998. The first official 3.0 release appeared
in October 1998 and spelled the beginning of the end for the 2.2 branch.
The tree branched again on Jan 20, 1999, leading to the 4.0-CURRENT and 3.X-STABLE
branches. From 3.X-STABLE, 3.1 was released on February 15, 1999, 3.2 on May 15, 1999,
3.3 on September 16, 1999, 3.4 on December 20, 1999, and 3.5 on June 24, 2000, which was
followed a few days later by a minor point release update to 3.5.1, to incorporate some
last-minute security fixes to Kerberos. This will be the final release in the 3.X
branch.
There was another branch on March 13, 2000, which saw the emergence of the 4.X-STABLE
branch, now considered to be the ``current -stable branch''. There have been several
releases from it so far: 4.0-RELEASE was introduced in March 2000, and the most recent
4.10-RELEASE came out in May 2004. There will be additional releases along the 4.X-stable
(RELENG_4) branch well into 2003.
The long-awaited 5.0-RELEASE was announced on January 19, 2003. The culmination of
nearly three years of work, this release started FreeBSD on the path of advanced
multiprocessor and application thread support and introduced support for the UltraSPARC® and ia64 platforms.
This release was followed by 5.1 in June of 2003. Besides a number of new features, the
5.X releases also contain a number of major developments in the underlying system
architecture. Along with these advances, however, comes a system that incorporates a
tremendous amount of new and not-widely-tested code. For this reason, the 5.X releases
are considered ``New Technology'' releases, while the 4.X series function as
``Production'' releases. In time, 5.X will be declared stable and work will commence on
the next development branch, 6.0-CURRENT.
For now, long-term development projects continue to take place in the 5.X-CURRENT
(trunk) branch, and SNAPshot releases of 5.X on CDROM (and, of course, on the net) are
continually made available from the snapshot
server as work progresses.
Contributed by Jordan Hubbard.
The goals of the FreeBSD Project are to provide software that may be used for any
purpose and without strings attached. Many of us have a significant investment in the
code (and project) and would certainly not mind a little financial compensation now and
then, but we are definitely not prepared to insist on it. We believe that our first and
foremost ``mission'' is to provide code to any and all comers, and for whatever purpose,
so that the code gets the widest possible use and provides the widest possible benefit.
This is, I believe, one of the most fundamental goals of Free Software and one that we
enthusiastically support.
That code in our source tree which falls under the GNU General Public License (GPL) or
Library General Public License (LGPL) comes with slightly more strings attached, though
at least on the side of enforced access rather than the usual opposite. Due to the
additional complexities that can evolve in the commercial use of GPL software we do,
however, prefer software submitted under the more relaxed BSD copyright when it is a
reasonable option to do so.
Contributed by Satoshi Asami.
The development of FreeBSD is a very open and flexible process, being literally built
from the contributions of hundreds of people around the world, as can be seen from our list of contributors.
FreeBSD's development infrastructure allow these hundreds of developers to collaborate
over the Internet. We are constantly on the lookout for new developers and ideas, and
those interested in becoming more closely involved with the project need simply contact
us at the FreeBSD technical discussions mailing list. The FreeBSD
announcements mailing list is also available to those wishing to make other FreeBSD
users aware of major areas of work.
Useful things to know about the FreeBSD project and its development process, whether
working independently or in close cooperation:
- The CVS repository
-
The central source tree for FreeBSD is maintained by CVS (Concurrent Versions System), a freely available source code
control tool that comes bundled with FreeBSD. The primary CVS repository resides on
a machine in Santa Clara CA, USA from where it is replicated to numerous mirror machines
throughout the world. The CVS tree, which contains the -CURRENT and -STABLE trees, can all be easily replicated to your
own machine as well. Please refer to the Synchronizing your
source tree section for more information on doing this.
- The committers list
-
The committers are the people who have write access to the CVS tree, and are
authorized to make modifications to the FreeBSD source (the term ``committer'' comes from
the cvs(1) commit command, which is used to bring new changes into the CVS
repository). The best way of making submissions for review by the committers list is to
use the send-pr(1) command. If
something appears to be jammed in the system, then you may also reach them by sending
mail to the FreeBSD committer's mailing list.
- The FreeBSD core team
-
The FreeBSD core team would be equivalent to the board of
directors if the FreeBSD Project were a company. The primary task of the core team is to
make sure the project, as a whole, is in good shape and is heading in the right
directions. Inviting dedicated and responsible developers to join our group of committers
is one of the functions of the core team, as is the recruitment of new core team members
as others move on. The current core team was elected from a pool of committer candidates
in June 2002. Elections are held every 2 years.
Some core team members also have specific areas of responsibility, meaning that they
are committed to ensuring that some large portion of the system works as advertised. For
a complete list of FreeBSD developers and their areas of responsibility, please see the Contributors
List
Note: Most members of the core team are volunteers when it comes to FreeBSD
development and do not benefit from the project financially, so ``commitment'' should
also not be misconstrued as meaning ``guaranteed support.'' The ``board of directors''
analogy above is not very accurate, and it may be more suitable to say that these are the
people who gave up their lives in favor of FreeBSD against their better judgment!
- Outside contributors
-
Last, but definitely not least, the largest group of developers are the users
themselves who provide feedback and bug fixes to us on an almost constant basis. The
primary way of keeping in touch with FreeBSD's more non-centralized development is to
subscribe to the FreeBSD technical discussions mailing list where such things are
discussed. See Appendix C for more information about the
various FreeBSD mailing lists.
The FreeBSD Contributors List is a long and growing one, so why not
join it by contributing something back to FreeBSD today?
Providing code is not the only way of contributing to the project; for a more complete
list of things that need doing, please refer to the FreeBSD Project web site.
In summary, our development model is organized as a loose set of concentric circles.
The centralized model is designed for the convenience of the users of FreeBSD, who are provided with an easy way of
tracking one central code base, not to keep potential contributors out! Our desire is to
present a stable operating system with a large set of coherent application programs that the users can easily install and use --
this model works very well in accomplishing that.
All we ask of those who would join us as FreeBSD developers is some of the same
dedication its current people have to its continued success!
FreeBSD is a freely available, full source 4.4BSD-Lite based release for Intel i386™, i486™, Pentium®, Pentium Pro,
Celeron®, Pentium II, Pentium III, Pentium 4
(or compatible), Xeon™, DEC Alpha™ and Sun UltraSPARC
based computer systems. It is based primarily on software from U.C. Berkeley's CSRG
group, with some enhancements from NetBSD, OpenBSD, 386BSD, and the Free Software
Foundation.
Since our release of FreeBSD 2.0 in late 94, the performance, feature set, and
stability of FreeBSD has improved dramatically. The largest change is a revamped virtual
memory system with a merged VM/file buffer cache that not only increases performance, but
also reduces FreeBSD's memory footprint, making a 5 MB configuration a more
acceptable minimum. Other enhancements include full NIS client and server support,
transaction TCP support, dial-on-demand PPP, integrated DHCP support, an improved SCSI
subsystem, ISDN support, support for ATM, FDDI, Fast and Gigabit Ethernet
(1000 Mbit) adapters, improved support for the latest Adaptec controllers, and many
thousands of bug fixes.
In addition to the base distributions, FreeBSD offers a ported software collection
with thousands of commonly sought-after programs. At the time of this printing, there
were over 10,500 ports! The list of ports ranges from http (WWW) servers, to games,
languages, editors, and almost everything in between. The entire ports collection
requires approximately 300 MB of storage, all ports being expressed as ``deltas'' to
their original sources. This makes it much easier for us to update ports, and greatly
reduces the disk space demands made by the older 1.0 ports collection. To compile a port,
you simply change to the directory of the program you wish to install, type make install, and let the system do the rest. The full original
distribution for each port you build is retrieved dynamically off the CDROM or a local
FTP site, so you need only enough disk space to build the ports you want. Almost every
port is also provided as a pre-compiled ``package'', which can be installed with a simple
command (pkg_add) by those who do not wish to compile their own
ports from source. More information on packages and ports can be found in Chapter 4.
A number of additional documents which you may find very helpful in the process of
installing and using FreeBSD may now also be found in the /usr/share/doc directory on any recent FreeBSD machine. You may
view the locally installed manuals with any HTML capable browser using the following
URLs:
- The FreeBSD Handbook
-
/usr/share/doc/handbook/index.html
- The FreeBSD FAQ
-
/usr/share/doc/faq/index.html
You can also view the master (and most frequently updated) copies at http://www.FreeBSD.org/.
|
|
|
|
© 2002-2004 Active-Venture.com
Website Hosting
Service
|
| |
|
Disclaimer: This
documentation is provided only for the benefits of our website hosting customers.
For authoritative source of the documentation, please refer to http://www.freebsd.org
|
|
|