- SGMLify the wiki's 'Why Use FreeBSD?' article into a new article in the

advocacy section of the website.
- Add the new article to the Makefile.
- Add a link to it and some description of it to the advocacy index.sgml.

Submitted by:	users on -stable, via theraven
SGMLified by:	issyl0
Reviewed by:	gabor
Approved by:	gabor (mentor)
This commit is contained in:
Isabell Long 2012-06-12 17:11:45 +00:00
parent 84e6defe68
commit 2f29f33785
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=39033
3 changed files with 214 additions and 1 deletions

View file

@ -11,5 +11,5 @@
DOCS= index.sgml
DOCS+= myths.sgml
DOCS+= whyusefreebsd.sgml
.include "${DOC_PREFIX}/share/mk/web.site.mk"

View file

@ -23,6 +23,12 @@
<h2>Web resources</h2>
<ul>
<li><p><a href="whyusefreebsd.html">Why Use FreeBSD?</a></p>
<p>Explanations given by existing users as to why FreeBSD should
be used.</p></li>
</ul>
<ul>
<li><p><a href="myths.html">*BSD Myths</a></p>

View file

@ -0,0 +1,207 @@
<!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based
Extension//EN" [
<!ENTITY base CDATA "..">
<!ENTITY date "$FreeBSD$">
<!ENTITY title "FreeBSD Advocacy Project">
<!ENTITY % navinclude.about "INCLUDE">
<!ENTITY url.articles "../doc/en_US.ISO8859-1/articles">
]>
<html>
&header;
<h1>Why Choose &os;?</h1>
<p>Why would you consider using &os;? We think that there are
lots of reasons. Here is a selection of reasons that some of
our existing users gave for their choice of operating system.</p>
<h2>The Community</h2>
<p>&os; is a community-driven operating system despite it being
sponsored corporately. &os; has active mailing lists,
forums, and IRC channels where experienced users and
developers are always willing to help the less
experienced.</p>
<p>The community is largely driven by technology, not ideology,
and is focused on building the best possible system and making
&os; as widely used as possible, not on pushing any other
agendas.</p>
<p>There is no dictator&mdash;benevolent or
otherwise&mdash;for the project. The Core Team is elected and
is nominally responsible for overseeing the goals of the project,
but this is a very light touch. Core mediates disputes between
developers, but rarely needs to take an active role in
development, beyond their separate contributions as individual
developers.</p>
<h2>Stability</h2>
<p>Stability means many different things. &os; very rarely
crashes (and when it does it is usually due to hardware
faults), but while that was a great boast a decade ago, now it
is an expected feature for any operating system.</p>
<p>Stability in &os; means much more than that. It means that
upgrading the system doesn't require upgrading the user.
Configuration interfaces do change over time, but only when
there is a good reason. If you learned how to use &os; in
2000, most of your knowledge would still be relevant.</p>
<p>Backwards compatibility is very important to the &os; team,
and any release in a major release series is expected to
be able to run any code&mdash;including kernel
modules&mdash;that ran on an earlier version. The entire base
system is developed together, including the kernel, the core
utilities, and the configuration system, so upgrades are
usually painless. Included tools like mergemaster help update
configuration files with little or no manual intervention.</p>
<h2>Early Adoption and Collaboration With Other Projects</h2>
<p>&os; has been one of the first adopters of the LLVM
infrastructure, including the clang compiler and the libc++
stack. The entire &os; 9.x system, including kernel and
userspace, can build with clang, and from &os; 9.1 both clang
and the permissively-licensed libc++ are included, giving a
modern, BSD-licensed C++ stack. Several &os; developers are
also active contributors to LLVM, ensuring that both projects
thrive together.</p>
<p>This same collaboration works downstream, with projects like
PC-BSD and pfSense building on top of the &os; base to provide
desktop and firewall oriented distributions, respectively.
These projects are not forks, they base their work on the
latest version of &os; and customize the system for specific
uses.</p>
<h2>Simple Configuration</h2>
<p>&os; service initialization is very simple. Each service,
whether part of the base system or installed from a port, comes
with a script that is responsible for starting and stopping it
(and often some other options). The /etc/rc.conf file
contains a list of variables for enabling and configuring
services. Want to enable ssh? Just add sshd_enable="YES" to
your rc.conf file. This system makes it easy to see at a
glance everything that will be started when your system
boots.</p>
<p>The rc system that reads this file understands dependencies
between services and so can automatically launch them in
parallel, or wait until one is finished before starting the
things that it needs. You get all of the benefits of a modern
configuration system, without a complex interface.</p>
<h2>Ports</h2>
<p>The ports tree contains a large collection of third-party
software, including older versions of some things where the
userbase is divided about the benefits of upgrading, and a lot
of niche programs. The chances are that anything you want to
run which works on &os; will be there.</p>
<p>Unlike some other systems, &os; maintains a clean division
between the base system and third-party ports and packages.
All third-party software goes in /usr/local, so if you want to
repurpose a machine then it's trivial to simply delete all
installed packages and then start installing the ones that you
want.</p>
<p>The upcoming pkgng tool makes working with binary packages
even easier, although source installs are still supported for
people who want the level of configurability that this
implies.</p>
<h2>Security</h2>
<p>Security is vital in any network-connected machine. &os;
provides a number of tools for ensuring that you can maintain a
secure system, such as:</p>
<ul>
<li>Jails, allowing you to run applications or entire systems
in a sandbox that can't access the rest of the system. With
tools like ezjail and ZFS you can instantly create a new
jail with a clone of an existing system, using a tiny amount
of disk space, and run untrusted code inside it.</li>
<li>Mandatory Access Control, from the TrustedBSD project,
allowing you to configure access control policies for all
operating system resources.</li>
<li>Capsicum, from &os; 9 onwards, allows developers to easily
implement privilege separation, reducing the impact of
compromised code.</li>
<li>The VuXML system for publishing vulnerabilities in ports,
which integrates with tools such as portaudit, so that your
daily security email tells you about any known
vulnerabilities in ported software.</li>
<li>Security event auditing, using the BSM standard.</li>
</ul>
<p>And, of course, all of the standard features that you'd
expect from a modern &unix; system including IPSec, SSH, and so
on.</p>
<h2>ZFS</h2>
<p>Cheap snapshots, clones, end-to-end checksums, deduplication,
compression, and no need to decide partition sizes on install.
Using ZFS for a few days makes going back to a more
traditional volume manager painful. If you want to test
something with ZFS, then it's trivial to just create a
snapshot and roll back if it didn't work.</p>
<p>If you're using jails, then ZFS lets you clone an existing
jail in under a second, irrespective of how big the jail
itself is.</p>
<h2>GEOM</h2>
<p>Even without ZFS, &os; comes with a rich storage system.
GEOM layers providers and consumers in arbitrary ways,
allowing you to use two networked machines for
high-availability storage, use your choice of RAID level, or
add features like compression or encryption.</p>
<h2>Working Sound</h2>
<p>&os; 4.x introduced in-kernel sound mixing, so that multiple
applications could play sound at the same time even with cheap
sound cards with no hardware mixing support. &os; 5.x
automatically allocated new channels to applications, without
any configuration.</p>
<p>Now, &os; has low-latency sound mixing with per-application
volume controls and full support for the OSS 4 APIs out of the
box. There's no need to configure a userspace sound daemon.
The same audio APIs that were used a decade ago still work on
&os;, including some compatibility modes to allow
applications that try to manipulate the global volume to only
change their own. If you want to watch DVDs with 5.1 surround
sound, just install your favourite media player and press
play.</p>
<h2>My System, How I Want It</h2>
<p>&os; gives you an easy-to-use, working, &unix;-like system.
This base system can then be extended easily. If you want to
run KDE or GNOME, then just install the metapackage for the
version that you prefer. If you want a headless server, then
it's equally easy to install the server tools that you want.</p>
<p>It's easy to run the &os; installer via a serial port and to
configure the entire system from the terminal. It's also easy
to install and use an existing desktop environment. The
decisions about the kind of system you want to use are left to
you.</p>
<p>If you're deploying &os; in a corporate environment, then
it's very easy to customise both the base system and the set
of installed packages for your specific requirements. The
build system provides numerous tuneable variables allowing you
to build exactly the base system that meets your needs.</p>
&footer;
</html>