xref: /freebsd/sys/README.md (revision ebacd8013fe5f7fdf9f6a5b286f6680dd2891036)
1FreeBSD Kernel Source:
2----------------------
3
4This directory contains the source files and build glue that make up the FreeBSD
5kernel and its modules, including both original and contributed software.
6
7Kernel configuration files are located in the `conf/` subdirectory of each
8architecture. `GENERIC` is the configuration used in release builds. `NOTES`
9contains documentation of all possible entries. `LINT` is a compile-only
10configuration used to maximize build coverage and detect regressions.
11
12Source Roadmap:
13---------------
14| Directory | Description |
15| --------- | ----------- |
16| amd64 | AMD64 (64-bit x86) architecture support |
17| arm | 32-bit ARM architecture support |
18| arm64 | 64-bit ARM (AArch64) architecture support |
19| cam | Common Access Method storage subsystem - `cam(4)` and `ctl(4)` |
20| cddl | CDDL-licensed optional sources such as DTrace |
21| conf | kernel build glue |
22| compat | Linux compatibility layer, FreeBSD 32-bit compatibility |
23| contrib | 3rd-party imported software such as OpenZFS |
24| crypto | crypto drivers |
25| ddb | interactive kernel debugger - `ddb(4)` |
26| fs | most filesystems, excluding UFS, NFS, and ZFS |
27| dev | device drivers and other arch independent code |
28| gdb | kernel remote GDB stub - `gdb(4)` |
29| geom | GEOM framework - `geom(4)` |
30| i386 | i386 (32-bit x86) architecture support |
31| kern | main part of the kernel |
32| libkern | libc-like and other support functions for kernel use |
33| modules | kernel module infrastructure |
34| net | core networking code |
35| net80211 | wireless networking (IEEE 802.11) - `net80211(4)` |
36| netgraph | graph-based networking subsystem - `netgraph(4)` |
37| netinet | IPv4 protocol implementation - `inet(4)` |
38| netinet6 | IPv6 protocol implementation - `inet6(4)` |
39| netipsec | IPsec protocol implementation - `ipsec(4)` |
40| netpfil | packet filters - `ipfw(4)`, `pf(4)`, and `ipfilter(4)` |
41| opencrypto | OpenCrypto framework - `crypto(7)` |
42| powerpc | PowerPC/POWER (32 and 64-bit) architecture support |
43| riscv | 64-bit RISC-V architecture support |
44| security | security facilities - `audit(4)` and `mac(4)` |
45| sys | kernel headers |
46| tests | kernel unit tests |
47| ufs | Unix File System - `ffs(7)` |
48| vm | virtual memory system |
49| x86 | code shared by AMD64 and i386 architectures |
50