393 lines
18 KiB
XML
393 lines
18 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
<!DOCTYPE html PUBLIC "-//FreeBSD//DTD XHTML 1.0 Transitional-Based Extension//EN"
|
|
"http://www.FreeBSD.org/XML/doc/share/sgml/xhtml10-freebsd.dtd" [
|
|
<!ENTITY title "FreeBSD Development Projects">
|
|
|
|
<!ENTITY url.articles "../doc/en_US.ISO8859-1/articles">
|
|
<!ENTITY url.books "../doc/en_US.ISO8859-1/books">
|
|
]>
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<title>&title;</title>
|
|
|
|
<cvs:keyword xmlns:cvs="http://www.FreeBSD.org/XML/CVS">$FreeBSD$</cvs:keyword>
|
|
</head>
|
|
|
|
<body class="navinclude.developers">
|
|
|
|
<a name="development"></a>
|
|
|
|
<p>In addition to the mainstream development path of FreeBSD, a number
|
|
of developer groups are working on the cutting edge to expand
|
|
FreeBSD's range of applications in new directions. Follow the links
|
|
below to learn more about these exciting projects.</p>
|
|
|
|
If you feel that a project is missing, please send the URL and a short
|
|
description (3-10 lines) to
|
|
<a href="../mailto.html">www@FreeBSD.org</a>.
|
|
|
|
<p>In addition, some of these projects regularly submit status reports,
|
|
which can be viewed on the <a href="../news/status/status.html">status
|
|
reports page</a>.</p>
|
|
|
|
<ul>
|
|
<li><a href="#documentation">Documentation</a></li>
|
|
<li><a href="../advocacy/index.html">Advocacy</a></li>
|
|
<li><a href="#applications">Applications</a></li>
|
|
<li><a href="#networking">Networking</a></li>
|
|
<li><a href="#storage">Storage</a></li>
|
|
<li><a href="#kernelandsecurity">Kernel and Security</a></li>
|
|
<li><a href="#devicedrivers">Device drivers</a></li>
|
|
<li><a href="#architecture">Architecture</a></li>
|
|
<li><a href="#misc">Misc</a></li>
|
|
<li><a href="summerofcode.html">Google Summer of Code</a></li>
|
|
</ul>
|
|
|
|
<a name="documentation"></a>
|
|
<h3>Documentation</h3>
|
|
<ul>
|
|
<li><a href="../docproj/docproj.html">FreeBSD Documentation Project</a>:
|
|
The FreeBSD Documentation Project is a group of people who maintain
|
|
and write the documentation (such as the Handbook and FAQ) for the
|
|
FreeBSD project. If you want to help with the documentation project,
|
|
subscribe to the freebsd-doc@FreeBSD.org
|
|
mailing list and participate.</li>
|
|
|
|
<li><a name="newbies" href="newbies.html">FreeBSD Resources for Newbies</a>:
|
|
A list of resources to help those new to FreeBSD and &unix; in
|
|
general.</li>
|
|
|
|
<li><a name="BSDsites" href="http://mirrorlist.FreeBSD.org/">
|
|
RELEASE/SNAP finder for FreeBSD FTP servers</a>:
|
|
A resource that would allow anyone to find a FTP server that contains
|
|
particular releases and SNAP of FreeBSD. The database is updated daily
|
|
at 3am Melbourne time (10 hours ahead of UTC).</li>
|
|
|
|
<li><a name="diary" href="http://www.freebsddiary.org/">The FreeBSD
|
|
Diary</a>: A collection of how-to entries aimed at UNIX
|
|
novices. The aim is to provide a set of step-by-step guides to
|
|
installing and configuring various ports.</li>
|
|
|
|
<li><a href="&url.books;/developers-handbook/index.html">
|
|
The FreeBSD Developers' Handbook</a></li>
|
|
|
|
<li><a href="&url.articles;/contributing-ports/index.html">
|
|
Contributing to the FreeBSD Ports Collection</a></li>
|
|
|
|
</ul>
|
|
|
|
<a name="applications"></a>
|
|
<h3>Applications</h3>
|
|
<ul>
|
|
<li><a name="java" href="../java/index.html">&java; on FreeBSD</a>:
|
|
This contains information on where to obtain the latest &jdk; for
|
|
FreeBSD, how to install and run it, and a list of &java; software that
|
|
you may find interesting.</li>
|
|
|
|
<li><a name="gnome" href="../gnome/index.html">GNOME on FreeBSD</a>:
|
|
This contains information on where to obtain the latest GNOME for
|
|
FreeBSD, how to install and run it, latest project news and
|
|
updates, FAQ covering FreeBSD-specific GNOME issues, application
|
|
porting guidelines and much more.</li>
|
|
|
|
<li><a name="kde" href="http://freebsd.kde.org">KDE on FreeBSD</a>:
|
|
This contains links to the latest KDE releases for FreeBSD, as well as
|
|
documentation and tutorials about how to install and run KDE on
|
|
FreeBSD. Project news and a FreeBSD-specific FAQ are also
|
|
available.</li>
|
|
|
|
<li><a name="mono" href="http://www.mono-project.com/Mono:FreeBSD">
|
|
Mono on FreeBSD</a>:
|
|
Here you can find information about the state of Mono and C# for FreeBSD.</li>
|
|
|
|
<li><a name="openoffice" href="http://porting.openoffice.org/freebsd/">
|
|
OpenOffice.org on FreeBSD</a>:
|
|
Information about the various OpenOffice.org ports.</li>
|
|
|
|
<li><a href="../ports/index.html">FreeBSD Ports Collection</a>:
|
|
The FreeBSD Ports Collection provides an easy way to compile and
|
|
install a wide range of applications with a minimum amount of effort.
|
|
A list of current ports is available along with a search mechanism
|
|
to see if a specific application exists in the Ports Collection.</li>
|
|
|
|
<li><a href="http://people.FreeBSD.org/~fenner/portsurvey/">FreeBSD Ports distfiles survey</a>:
|
|
A list which checks the Ports Collection for unfetchable distfiles
|
|
and provides a summary for each port.</li>
|
|
|
|
<li><a href="http://FreshPorts.org/">FreshPorts</a>: Provides the most up-to-date list of
|
|
ports and port changes. Add your favourite ports to your watch list and receive email
|
|
notification of any changes.</li>
|
|
|
|
<li><a href="http://pointyhat.FreeBSD.org/">Pointyhat</a>: Is a server which
|
|
checks the Ports Collection and keeps package building logs and error
|
|
logs for each port.</li>
|
|
</ul>
|
|
|
|
<a name="networking"></a>
|
|
<h3>Networking</h3>
|
|
<ul>
|
|
<li><a name="netperf" href="&base;/projects/netperf/index.html">Netperf</a>:
|
|
Network stack optimization for the FreeBSD 5.x and 6.x kernels, a follow-on
|
|
to the SMPng network stack locking work for FreeBSD 5.3. This project is
|
|
exploring and implementing optimizations strategies for a multi-threaded
|
|
network stack.</li>
|
|
<li><a name="kame" href="http://www.kame.net/">KAME Project</a>: A free IPv6/IPsec stack for BSD.</li>
|
|
<li><a name="SYSLOG-SECURE" href="http://www.faqs.org/rfcs/rfc3164.html">SYSLOG-SECURE</a>:
|
|
In August 2001 a standard of syslog was made: RFC3164. This RFC
|
|
describes some extensions to add security to syslog. A project
|
|
started in 2002 to adapt RFC3164 to the FreeBSD version of syslog and to add
|
|
some security extensions, at least syslog-sign. Both libc and syslogd will
|
|
be modified. And optionally some tools to verify or manage the security
|
|
would be made.
|
|
All help is welcome. Send an email to albert@ons-huis.net for info.</li>
|
|
</ul>
|
|
|
|
<a name="storage"></a>
|
|
<h3>Storage</h3>
|
|
<ul>
|
|
<li><a name="afs" href="http://www.stacken.kth.se/projekt/arla/">Arla</a>:
|
|
A free AFS client implementation. The main goal is to
|
|
make a fully functional client with all capabilities of normal AFS.
|
|
Other planned and implemented things are all the normal management
|
|
tools and a server.</li>
|
|
|
|
<li><a name="bigdisk" href="&base;/projects/bigdisk/index.html">Big Disk</a>:
|
|
The goal of the <em>Large data storage in FreeBSD</em> project is to make
|
|
FreeBSD ready for multi-terabyte drive/volume capacities and file systems.</li>
|
|
|
|
<li><a name="coda" href="http://www.coda.cs.cmu.edu/">Coda</a>:
|
|
A distributed filesystem. Among its features are disconnected
|
|
operation, good security model, server replication and persistent
|
|
client side caching.</li>
|
|
|
|
<li><a name="journaling" href="http://www.ece.cmu.edu/~ganger/papers/">
|
|
Journaling versus Soft Updates</a>: Asynchronous Meta-data Protection in File Systems.</li>
|
|
|
|
<li><a name="tcfs" href="http://www.tcfs.unisa.it/">TCFS</a>:
|
|
A Transparent Cryptographic File System that is a suitable
|
|
solution to the problem of privacy for distributed filesystem. By a
|
|
deeper integration between the encryption service and the filesystem,
|
|
it results in a complete transparency of use to the user
|
|
applications. Files are stored in encrypted form and are decrypted
|
|
before they are read. The encryption/decryption process takes place on
|
|
the client machine and thus the encryption/decryption key never
|
|
travels on the network.</li>
|
|
|
|
<li><a name="Tertiary" href="http://now.cs.berkeley.edu/Td/">Tertiary Disk</a>:
|
|
A storage system architecture to create large disk storage systems
|
|
that avoid the disadvantages of custom built disk arrays. The
|
|
name comes from twin goals: to have the cost per megabyte and
|
|
capacity of tape libraries and the performance of magnetic
|
|
disks. We use commodity, off the shelf components to develop a
|
|
scalable, low cost, terabyte capacity disk system. Our target is
|
|
to build a complete storage system with about 30-50% extra to
|
|
the cost of the raw disk. Tertiary Disk uses PCs connected by a
|
|
switched network to host a large number of disks. Our prototype
|
|
consists of 20 200MHz PC PCs, which host 370 8GB disks. The PCs
|
|
are connected through a 100Mbps Ethernet switch.</li>
|
|
|
|
<li><a name="vinum" href="http://www.vinumvm.org/">Vinum</a>:
|
|
A logical volume manager modeled after the VERITAS volume manager™.
|
|
However, it is not a clone of Veritas, and attempts to solve a
|
|
number of problems more elegantly than Veritas. It also offers
|
|
features that Veritas does not have.</li>
|
|
|
|
<li><a name="PathConvert" href="http://www.tamacom.com/pathconvert/">
|
|
The PathConvert project</a>: A project to develop utilities which make
|
|
conversion between absolute path name and relative path name. It
|
|
brings benefits mainly to the users of NFS and WWW.</li>
|
|
</ul>
|
|
|
|
<a name="kernelandsecurity"></a>
|
|
<h3>Kernel, security</h3>
|
|
<ul>
|
|
<li><a name="lotteryscheduling"
|
|
href="http://www.cs.cmu.edu/~dpetrou/research.html">
|
|
Lottery Scheduling Kernel</a>: This work is based on
|
|
Waldspurger's lottery scheduling algorithm, which implements
|
|
proportional-share resource management. The primary advantages
|
|
are that users have strict control over the relative execution
|
|
rates of their processes, and users are load-insulated from each
|
|
other, preventing one user from dominating the CPU.</li>
|
|
|
|
<li><a name="openbsm" href="http://www.OpenBSM.org/">OpenBSM</a>: An open
|
|
source implementation of Sun's Basic Security Module (BSM) Audit API and file
|
|
format. OpenBSM provides the userland libraries, tools, and documentation
|
|
for the TrustedBSD audit implementation that will be integrated into
|
|
FreeBSD.</li>
|
|
|
|
<li><a name="trustedbsd" href="http://www.TrustedBSD.org/">TrustedBSD</a>:
|
|
Provides a set of trusted operating system extensions to the FreeBSD operating
|
|
system. This includes features such as fine-grained privileges (capabilities),
|
|
Access Control Lists, and Mandatory Access Control. These features are
|
|
being integrated back into the base FreeBSD distribution, as well as being
|
|
ported to other BSD-derived systems.</li>
|
|
|
|
<li><a name="kernelstresstest"
|
|
href="http://www.holm.cc/stress/">Kernel Stress Test Suite</a>: The
|
|
purpose of this stress test is to crash the system. The stress test
|
|
is composed of small test programs and scripts. Each test targets a
|
|
specific area of the kernel. The key concept of this test suite is
|
|
chaos. Each test sleeps for a random number of seconds before it
|
|
starts up in a random number of invocations.</li>
|
|
|
|
</ul>
|
|
|
|
<a name="devicedrivers"></a>
|
|
<h3>Device drivers</h3>
|
|
<ul>
|
|
|
|
<li><a name="busdma" href="&base;/projects/busdma/index.html">busdma
|
|
and SMPng driver conversion</a>: busdma provides a portable abstraction
|
|
to the Direct Memory Access (DMA) hardware primitives used by many high
|
|
performance device drivers. By using this abstraction, device driver
|
|
authors avoid adding platform-specific DMA management code, improving
|
|
the portability of drivers between hardware architectures. This page
|
|
also tracks the progress of drivers towards being SMPng-safe.</li>
|
|
|
|
<li><a name="deviceframework" href="http://people.FreeBSD.org/~dfr/devices.html">
|
|
A New Device Framework for FreeBSD</a></li>
|
|
|
|
<li><a name="atm" href="http://chuck.cranor.org/p/bsdatm.pdf"> BSD ATM: implementation of ATM internetworking under 4.4BSD</a>:
|
|
New computer applications in areas such as multimedia, imaging,
|
|
and distributed computing demand high levels of performance from
|
|
computer networks. ATM-based networking solutions provide one
|
|
possible alternative to meeting these performance needs.
|
|
However, the complexity of ATM over traditional networks such as
|
|
Ethernet has proven to be a barrier to its being used. In this
|
|
paper we present the design and implementation of BSD ATM, a
|
|
light-weight and efficient ATM software layer for BSD-based
|
|
operating systems that requires minimal changes to the operating
|
|
system. BSD ATM can be used both for IP-based networking traffic
|
|
and for ``native'' ATM traffic.</li>
|
|
|
|
<li><a name="homeauto" href="http://people.FreeBSD.org/~fsmp/HomeAuto/HomeAuto.html">Home Automation</a>:
|
|
Using FreeBSD to run appliance controllers, infra-red controllers,
|
|
automated telephone systems, and more.</li>
|
|
|
|
<li><a name="tokenring" href="http://www.jurai.net/~winter/tr/">The FreeBSD Token-Ring Project</a>:
|
|
Information, files, patches, and documentation about adding Token Ring
|
|
support to FreeBSD.</li>
|
|
|
|
<li><a name="xircomcem">Xircom CEM Ethernet Driver</a>: A mailing list exists for further
|
|
development of Scott Mitchell's Xircom CEM ethernet driver. Send
|
|
<tt>subscribe freebsd-xircom</tt> to <a
|
|
href="mailto:majordomo@lovett.com">majordomo@lovett.com</a> to
|
|
join.</li>
|
|
</ul>
|
|
|
|
<a name="architecture"></a>
|
|
<h3>Architecture</h3>
|
|
<ul>
|
|
<li><a name="ia64" href="../platforms/ia64/index.html">
|
|
Porting FreeBSD to IA-64 systems</a>:
|
|
This project is responsible for porting FreeBSD to the IA-64
|
|
architecture. Direct any questions specific to this project to the
|
|
freebsd-ia64@FreeBSD.org mailing list. </li>
|
|
|
|
<li><a name="ppc" href="../platforms/ppc.html">Porting FreeBSD to PowerPC® systems</a>:
|
|
Contains information on the FreeBSD PPC port, such as mailing list
|
|
information and so on.</li>
|
|
|
|
<li><a name="sparc" href="../platforms/sparc.html">Porting FreeBSD to SPARC® systems</a>:
|
|
Contains information on the FreeBSD SPARC port including a FAQ,
|
|
some early boot code, information on SPARC processors and motherboards,
|
|
and other SPARC projects.</li>
|
|
|
|
<li><a name="sysvr4" href="http://slash.dotat.org/~newton/freebsd-svr4/">
|
|
SysVR4 Emulation</a>: This page describes an SysVR4 emulator for
|
|
FreeBSD. It is currently capable of running (or walking, in some
|
|
cases) a wide-ish variety of SysV executables taken from Solaris™/x86
|
|
2.5.1 and 2.6 systems. I have reason to believe that it will also run
|
|
SCO UnixWare and SCO OpenServer binaries.</li>
|
|
|
|
<li><a name="oskit" href="http://www.cs.utah.edu/flux/oskit/">The OSKit</a>:
|
|
The OSKit is a framework and a set of 31 component libraries oriented
|
|
to operating systems, together with extensive documentation. By
|
|
providing in a modular way not only most of the infrastructure
|
|
"grunge" needed by an OS, but also many higher-level components, the
|
|
OSKit's goal is to lower the barrier to entry to OS R&D and to
|
|
lower its costs. The OSKit makes it vastly easier to create a new OS,
|
|
port an existing OS to the x86 (or in the future, to other
|
|
architectures supported by the OSkit), or enhance an OS to support a
|
|
wider range of devices, filesystem formats, executable formats, or
|
|
network services. The OSKit also works well for constructing OS-related
|
|
programs, such as boot loaders or OS-level servers atop a
|
|
microkernel.</li>
|
|
</ul>
|
|
|
|
<a name="misc"></a>
|
|
<h3>Misc</h3>
|
|
<ul>
|
|
<li><a name="freesbie" href="http://www.freesbie.org/">FreeSBIE</a>:
|
|
A live CD based on the FreeBSD operating system. It
|
|
includes a broad range of useful applications, and can either run
|
|
purely from CD, or can act as an installer to install FreeBSD on
|
|
your hard disk.</li>
|
|
|
|
<li><a name="nanobsd" href="&url.articles;/nanobsd/index.html">NanoBSD</a>:
|
|
NanoBSD is a tool designed to create a possibly reduced FreeBSD
|
|
system image, which is suited to fit on a Compact Flash card
|
|
(or other mass storage medium) in a way which is suitable for
|
|
use in appliance like applications. The FreeBSD documentation
|
|
collection includes an introductory
|
|
<a href="&url.articles;/nanobsd/index.html">article about NanoBSD</a>,
|
|
which includes useful tips about setting up, running and
|
|
using NanoBSD.</li>
|
|
|
|
<li><a name="global" href="http://www.gnu.org/software/global/global.html">GLOBAL</a>:
|
|
A common source code tag system that works the same way across
|
|
diverse environments. Currently, it supports the shell command line,
|
|
the nvi editor, web browser, the emacs editor, and the elvis editor,
|
|
and the supported languages are C, Yacc, and Java.</li>
|
|
|
|
<li><a name="enterman" href="http://ezine.daemonnews.org/199908/enteruser.html">Enteruser</a>: A Replacement for adduser.</li>
|
|
|
|
<li><a name="acpi"
|
|
href="&base;/projects/acpi/">ACPI on FreeBSD</a>:
|
|
A Project created to get ACPI working smoothly on FreeBSD.</li>
|
|
|
|
<li><a name="binup"
|
|
href="http://www.daemonology.net/freebsd-update/">Binary
|
|
Updater</a>: FreeBSD Update is a system for automatically
|
|
building, distributing, fetching, and applying binary security
|
|
updates for FreeBSD. This makes it possible to easily track
|
|
the FreeBSD security branches without the need for fetching
|
|
the source tree and recompiling (except on the machine
|
|
building the updates, of course). Updates are
|
|
cryptographically signed; they are also distributed as binary
|
|
diffs using a binary diff tool, which dramatically reduces
|
|
the bandwidth used.</li>
|
|
|
|
<li><a name="c99" href="&base;/projects/c99/index.html">The
|
|
FreeBSD C99 & &posix; Conformance Project</a>: This project aims to
|
|
implement all requirements of the ISO 9899:1999 (C99) and
|
|
IEEE 1003.1-2001 (POSIX) standards.</li>
|
|
|
|
<li><a name="cvsweb" href="cvsweb.html">CVSweb</a>: A WWW
|
|
interface for CVS repositories with which you can browse a file
|
|
hierarchy on your browser to view each file's revision history
|
|
in a very handy manner.</li>
|
|
|
|
<li><a name="flcl"
|
|
href="http://laptop.bsdgroup.de/freebsd/"> The FreeBSD
|
|
Laptop Compatibility List</a>: A comprehensive database of
|
|
laptops and PCMCIA cards that work with FreeBSD. This site
|
|
contains detailed information about known hardware and
|
|
software issues.</li>
|
|
|
|
<li><a name="tetintegration" href="http://wiki.freebsd.org/TetIntegration">TET
|
|
Integration</a>: The Test Execution Toolkit from <a
|
|
href="http://www.opengroup.org/">The Open Group</a> is a
|
|
light-weight open-source test execution framework that
|
|
supports distributed testing. This project investigates
|
|
using TET and existing TET-based open-source standards-compliance
|
|
test suites (VSX-PCTS, VSC-Lite, VSTH-Lite, VSW5 and others) in
|
|
FreeBSD.</li>
|
|
|
|
</ul>
|
|
|
|
|
|
</body>
|
|
</html>
|