README.md

April 22, 2026 ยท View on GitHub

FreeBSD Kernel Source:

This directory contains the source files and build glue that make up the FreeBSD kernel and its modules, including both original and contributed software.

Kernel configuration files are located in the conf/ subdirectory of each architecture. GENERIC is the configuration used in release builds. NOTES contains documentation of all possible entries. LINT is a compile-only configuration used to maximize build coverage and detect regressions.

Documentation:

Source code documentation is maintained in a set of man pages, under section 9. These pages are located in share/man/man9, from the top-level of the src tree. Consult intro(9) for an overview of existing pages.

Some additional high-level documentation of the kernel is maintained in the Architecture Handbook.

Source Roadmap:

DirectoryDescription
amd64AMD64 (64-bit x86) architecture support
arm32-bit ARM architecture support
arm6464-bit ARM (AArch64) architecture support
bsmBasic Security Module headers - audit(4) and bsm(3)
camCommon Access Method storage subsystem - cam(4) and ctl(4)
cddlCDDL-licensed optional sources such as DTrace
compatLinux compatibility layer, FreeBSD 32-bit compatibility
confkernel build glue
contrib3rd-party imported software such as OpenZFS
cryptocrypto drivers
ddbinteractive kernel debugger - ddb(4)
devdevice drivers and other arch independent code
dtsFreeBSD-specific device tree sources
fsmost filesystems, excluding UFS, NFS, and ZFS
gdbkernel remote GDB stub - gdb(4)
geomGEOM framework - geom(4)
gnuGPL-licensed sources
i386i386 (32-bit x86) architecture support
isaPC ISA bus implementation
kernmain part of the kernel
kgssapikernel-space GSSAPI implementation
libkernlibc-like and other support functions for kernel use
moduleskernel module infrastructure
netcore networking code
net80211wireless networking (IEEE 802.11) - net80211(4)
netgraphgraph-based networking subsystem - netgraph(4)
netinetIPv4 protocol implementation - inet(4)
netinet6IPv6 protocol implementation - inet6(4)
netipsecIPsec protocol implementation - ipsec(4)
netlinkkernel network configuration protocol - netlink(4)
netpfilpacket filters - ipfw(4), pf(4), and ipfilter(4)
netsmbServer Message Block protocol implementation
nfscommon code and headers for Network File System
nfsclientNFS client implementation for mounting and stats
nfsserverNFS server implementation for exporting local filesystems to network
nlmNetwork Lock Management protocol implementation
ofedOpenFabrics Enterprise Distribution implementation
opencryptoOpenCrypto framework - crypto(7)
powerpcPowerPC/POWER (32 and 64-bit) architecture support
riscv64-bit RISC-V architecture support
rpcOpen Network Computing Remote Procedure Call implementation - rpc(3)
securitysecurity facilities - audit(4) and mac(4)
syskernel headers
tekenterminal emulation interface implementation - teken(3)
testskernel unit tests
toolskernel build scripts and utilities
ufsUnix File System - ffs(4)
vmvirtual memory system
x86code shared by AMD64 and i386 architectures
xdrExternal Data Representation implementation - xdr(3)
xenXen hypervisor support - xen(4)