xref: /freebsd/sys/README.md (revision 9e0dcd0ab296ddcdee60a4952435175ae3f7bdb3)
1d1087fe8SMitchell HorneFreeBSD Kernel Source:
2d1087fe8SMitchell Horne----------------------
3d1087fe8SMitchell Horne
4d1087fe8SMitchell HorneThis directory contains the source files and build glue that make up the FreeBSD
5d1087fe8SMitchell Hornekernel and its modules, including both original and contributed software.
6d1087fe8SMitchell Horne
7*9e0dcd0aSMitchell HorneKernel configuration files are located in the `conf/` subdirectory of each
8*9e0dcd0aSMitchell Hornearchitecture. `GENERIC` is the configuration used in release builds. `NOTES`
9*9e0dcd0aSMitchell Hornecontains documentation of all possible entries. `LINT` is a compile-only
10*9e0dcd0aSMitchell Horneconfiguration used to maximize build coverage and detect regressions.
11*9e0dcd0aSMitchell Horne
12d1087fe8SMitchell HorneSource Roadmap:
13d1087fe8SMitchell Horne---------------
14d1087fe8SMitchell Horne| Directory | Description |
15d1087fe8SMitchell Horne| --------- | ----------- |
1639701338SMitchell Horne| amd64 | AMD64 (64-bit x86) architecture support |
1739701338SMitchell Horne| arm | 32-bit ARM architecture support |
1839701338SMitchell Horne| arm64 | 64-bit ARM (AArch64) architecture support |
1939701338SMitchell Horne| cam | Common Access Method storage subsystem - `cam(4)` and `ctl(4)` |
2039701338SMitchell Horne| cddl | CDDL-licensed optional sources such as DTrace |
2139701338SMitchell Horne| conf | kernel build glue |
2239701338SMitchell Horne| compat | Linux compatibility layer, FreeBSD 32-bit compatibility |
2339701338SMitchell Horne| contrib | 3rd-party imported software such as OpenZFS |
2439701338SMitchell Horne| crypto | crypto drivers |
2539701338SMitchell Horne| ddb | interactive kernel debugger - `ddb(4)` |
2639701338SMitchell Horne| fs | most filesystems, excluding UFS, NFS, and ZFS |
27d1087fe8SMitchell Horne| dev | device drivers |
2839701338SMitchell Horne| gdb | kernel remote GDB stub - `gdb(4)` |
2939701338SMitchell Horne| geom | GEOM framework - `geom(4)` |
3039701338SMitchell Horne| i386 | i386 (32-bit x86) architecture support |
31d1087fe8SMitchell Horne| kern | main part of the kernel |
3239701338SMitchell Horne| libkern | libc-like and other support functions for kernel use |
3339701338SMitchell Horne| modules | kernel module infrastructure |
3439701338SMitchell Horne| net | core networking code |
3539701338SMitchell Horne| net80211 | wireless networking (IEEE 802.11) - `net80211(4)` |
3639701338SMitchell Horne| netgraph | graph-based networking subsystem - `netgraph(4)` |
3739701338SMitchell Horne| netinet | IPv4 protocol implementation - `inet(4)` |
3839701338SMitchell Horne| netinet6 | IPv6 protocol implementation - `inet6(4)` |
3939701338SMitchell Horne| netipsec | IPsec protocol implementation - `ipsec(4)` |
4039701338SMitchell Horne| netpfil | packet filters - `ipfw(4)`, `pf(4)`, and `ipfilter(4)` |
4139701338SMitchell Horne| opencrypto | OpenCrypto framework - `crypto(7)` |
4239701338SMitchell Horne| powerpc | PowerPC/POWER (32 and 64-bit) architecture support |
4339701338SMitchell Horne| riscv | 64-bit RISC-V architecture support |
4439701338SMitchell Horne| security | security facilities - `audit(4)` and `mac(4)` |
45d1087fe8SMitchell Horne| sys | kernel headers |
4639701338SMitchell Horne| tests | kernel unit tests |
4739701338SMitchell Horne| ufs | Unix File System - `ffs(7)` |
4839701338SMitchell Horne| vm | virtual memory system |
49d1087fe8SMitchell Horne| x86 | code shared by AMD64 and i386 architectures |
50