FreeBSD Documentation and Resources
The FreeBSD FAQ (faq)
Frequently Asked Questions, and answers, covering all aspects of FreeBSD.
The FreeBSD Handbook (handbook)
A constantly evolving, comprehensive resource for FreeBSD users.
- I. Getting Started
-
- 1 Introduction
- 2 Installing FreeBSD
- 3 UNIX Basics
- 4 Installing Applications: Packages and Ports
- 5 The X Window System
- II. System Administration
-
- 6 Configuration and Tuning
- 7 The FreeBSD Booting Process
- 8 Users and Basic Account Management
- 9 Configuring the FreeBSD Kernel
- 10 Security
- 11 Printing
- 12 Storage
- 13 The Vinum Volume Manager
- 14 Localization - I18N/L10N Usage and Setup
- 15 Desktop Applications
- 16 Multimedia
- 17 Serial Communications
- 18 PPP and SLIP
- 19 Advanced Networking
- 20 Electronic Mail
- 21 The Cutting Edge
- 22 Linux Binary Compatibility
- III. Appendices
-
- A. Obtaining FreeBSD
- B. Bibliography
- C. Resources on the Internet
- D. PGP Keys
Gift baskets come in many shapes, sizes, and
types
The FreeBSD Developer's Handbook (developers-handbook)
For people who want to develop software for FreeBSD (and not just people who are developing FreeBSD itself).
- I. Basics
-
- 1 Introduction
- 2 Programming Tools
- 3 Secure Programming
- 4 Localization and Internationalization - L10N and I18N
- 5 Source Tree Guidelines and Policies
- 6 Regression and Performance Testing
- II. Interprocess Communication
-
- 7 * Signals
- 8 Sockets
- 9 IPv6 Internals
- III. Kernel
-
- 10 DMA
- 11 Kernel Debugging
- 12 * UFS
- 13 * AFS
- 14 * Syscons
- 15 * Compatibility Layers
- IV. Architectures
-
- 16 x86 Assembly Language Programming
- 17 * Alpha
- V. Appendices
The FreeBSD Architecture Handbook (arch-handbook)
For FreeBSD system developers. This book covers the architectural details of many important FreeBSD kernel subsystems.
- I. Kernel
-
- 1 Bootstrapping and kernel initialization
- 2 Locking Notes
- 3 Kernel Objects
- 4 The Jail Subsystem
- 5 The SYSINIT Framework
- 6 The TrustedBSD MAC Framework
- 7 Virtual Memory System
- 8 SMPng Design Document
- 9 * UFS
- 10 * AFS
- 11 * Syscons
- 12 * Compatibility Layers
- II. Device Drivers
-
- 13 Writing FreeBSD Device Drivers
- 14 ISA device drivers
- 15 PCI Devices
- 16 Common Access Method SCSI Controllers
- 17 USB Devices
- 18 Newbus
- 19 Sound subsystem
- 20 PC Card
- III. Appendices
The Porter's Handbook (porters-handbook)
Essential reading if you plan on providing a port of a third party piece of software.
- 1 Introduction
- 2 Making a port yourself
- 3 Quick Porting
- 4 Slow Porting
- 5 Configuring the Makefile
-
- 5.4 The distribution files
- 5.5 MAINTAINER
- 5.6 COMMENT
- 5.7 Dependencies
- 5.8 Specifying the working directory
- 5.9 CONFLICTS
- 5.10 Building mechanisms
- 6 Special considerations
-
- 6.1 Shared Libraries
- 6.2 Ports with distribution restrictions
- 6.3 Using perl
- 6.4 Using X11
- 6.5 Using automake, autoconf, and libtool
- 6.6 Using GNOME
- 6.7 Using KDE
- 6.8 Using Bison
- 6.9 Using Java
- 6.10 Using Python
- 6.11 Using Emacs
- 6.12 Using Ruby
- 6.13 Using SDL
- 7 MASTERDIR
- 8 Shared library versions
- 9 Manpages
- 10 Ports that require Motif
- 11 X11 fonts
- 12 Info files
- 13 The pkg-* files
-
- 13.1 pkg-message
- 13.2 pkg-install
- 13.3 pkg-deinstall
- 13.4 pkg-req
- 13.5 Changing pkg-plist based
on make variables
- 13.6 Changing the names of pkg-* files
- 14 Testing your port
-
- 14.1 Running make
describe
- 14.2 Portlint
- 14.3 PREFIX
- 15 Upgrading
- 16 Dos and Don'ts
-
- 16.1 Introduction
- 16.2 Stripping Binaries
- 16.3 INSTALL_* macros
- 16.4 WRKDIR
- 16.5 WRKDIRPREFIX
- 16.6 Differentiating operating systems and OS
versions
- 16.7 __FreeBSD_version values
- 16.8 Writing something after bsd.port.mk
- 16.9 Install additional documentation
- 16.10 Subdirectories
- 16.11 Cleaning up empty directories
- 16.12 UIDs
- 16.13 Do things rationally
- 16.14 Respect both CC and CXX
- 16.15 Respect CFLAGS
- 16.16 Configuration files
- 16.17 Feedback
- 16.18 README.html
- 16.19 Marking a port BROKEN, FORBIDDEN, or otherwise
- 16.20 Necessary workarounds
- 16.21 Miscellanea
- 16.22 If you are stuck...
- 17 A Sample Makefile
- 18 Automated package list creation
- 19 Keeping Up
-
- 19.1 FreshPorts
- 19.2 The Web Interface to the Source Repository
- 19.3 The FreeBSD Ports Mailing List
- 19.4 The FreeBSD Port Building Cluster
- 19.5 The FreeBSD Port Distfile Survey
- 19.6 The FreeBSD Ports Monitoring System
Other Documentation
4.4BSD Documents: This is a hypertext version
of the 4.4BSD documents from /usr/share/doc,
where you will find the documents on a FreeBSD machine (if you install the doc distribution).
Info Documents: This is a hypertext version of
the Info documents from /usr/share/info, where
you will find the Info documents on a FreeBSD machine (if you install the info distribution).
The Source Code
References:
If you like digging your fingers into source code, here is a hypertext version of the
FreeBSD kernel source. This is brought to you courtesy of Warren Toomey.
|