24.4 GENERIC 内核选项(amd64)
理论上,所有 GENERIC 内核选项都能在机器无关选项和 amd64/i386 机器相关选项中找到说明。
详细选项列表及设备行说明可参考对应的 NOTES 文件。
GENERIC 的本义是“通用的、一般的、普通的”。GENERIC 内核选项是 amd64 体系架构下所有镜像的默认构建选项(FreeBSD/amd64 通用内核配置文件),但 CURRENT(main 分支)会引入额外的调试选项。
为了便于说明,并避免引入对大多数非开发者无用的调试选项,本文选择 15.0-RELEASE(releng/15.0 分支)的 GENERIC 内核选项进行说明。
版本说明:u2f(4): Invert U2F_MAKE_UHID_ALIAS kernel build option。全文近 400 行。
cpu HAMMERHAMMER 是 AMD K8 的研发代号,即 Opteron(皓龙)和 Athlon64(速龙)。
ident GENERIC这是内核的“标识符”。
通常应与内核的名称相同。该选项用于将内核名称设置为 GENERIC。至少需要一行 ident 条目。
makeoptions DEBUG=-g构建包含 gdb(1) 调试符号的内核。
makeoptions WITH_CTF=1为支持 DTrace,运行 ctfconvert(1) 将调试数据转换为 CTF 数据。
options SCHED_ULEULE 调度器。
options NUMA非一致性内存架构(NUMA)支持。
启用内核线程抢占。
其曾用名为 BLOAT_KERNEL_WITH_EXTERR,用于启用内核扩展错误信息。参见 Extended errors from kernel。
用于子系统虚拟化,例如 VNET。
IPv4 协议簇。IP 协议簇是一组协议,位于互联网协议(IP)之上,并使用互联网地址格式。该协议簇为 SOCK_STREAM、SOCK_DGRAM 和 SOCK_RAW 套接字类型提供协议支持;其中 SOCK_RAW 接口提供了对 IP 协议的访问。
IPv6 协议簇。
允许通过 kldload 命令加载 ipsec 和 tcpmd5 模块。
内联 IPsec 卸载基础设施。
Multipath 路由支持。
模块化 FIB 查找支持。
TCP 卸载支持。
增强的 TCP 事件日志功能。
TCP 的 hhook(9) 框架支持。
TCP 快速打开
允许加载 SCTP KLD 模块支持。
TLS 发送和接收卸载。
伯克利快速文件系统(FFS)。
启用 FFS 软更新支持。
访问控制列表支持。
提升大目录的性能。
启用基于 gjournal 的 UFS 日志。
启用 UFS 磁盘配额。
允许 MD 设备作为根设备。
网络文件系统(NFS)客户端。
网络文件系统(NFS)服务器。
网络锁管理器(NLM)。
将 NFS 用作 /,依赖 NFSCL。
MS-DOS 文件系统。
ISO 9660 文件系统。
Proc 进程文件系统(需要 PSEUDOFS 支持)。
伪文件系统框架。
高效的内存文件系统。
软件 RAID 支持。
提供 GEOM 标签功能。
EFI 运行时服务支持。
兼容 i386 二进制程序。
兼容 FreeBSD 4。
兼容 FreeBSD 5。
兼容 FreeBSD 6。
兼容 FreeBSD 7。
兼容 FreeBSD 9。
兼容 FreeBSD 10。
兼容 FreeBSD 11。
兼容 FreeBSD 12。
兼容 FreeBSD 13。
兼容 FreeBSD 14。
在探测 SCSI 设备前的延迟时间(毫秒)。
ktrace(1) 支持。
stack(9) 支持。
SYSV 风格共享内存。
SYSV 风格消息队列。
SYSV 风格信号量。
POSIX P1003_1B 实时扩展。
防止 printf 输出内容交错。
在 /dev 中生成字符设备(CDEV)条目。
hwpmc(4) 所需的内核钩子。
安全事件审计。
Capsicum 能力模式。
Capsicum 能力
TrustedBSD MAC 框架
确保内核编译时包含栈帧信息。
内核 DTrace 钩子
允许内核 ELF 链接器加载 CTF 数据。
在内核中包含名为 INCLUDE_CONFIG_FILE 的配置文件。可以方便地引入更多存在于其他文本中的选项。
资源核算框架
默认设置 kern.racct.enable=0
资源限制框架。
调试支持(始终需要)
启用内核调试器支持。
打印 Panic 的堆栈跟踪信息。
内核转储功能
支持加密内核转储。
支持使用 gzip 压缩的内核转储和用户转储。
支持使用 zstd 压缩的内核转储和用户转储。
debugnet 网络支持。
netdump(4) 客户端支持。
netgdb(4) 客户端支持。
默认生成支持 SMP(对称多处理器)的内核。
CPU 频率控制支持。
总线支持
ACPI 支持。
smbios,即 System Management BIOS。提供系统管理 BIOS(System Management BIOS)的基本支持。
启用 IOMMU。
通用 PCI/PCIe 总线驱动。
PCIe 原生热插拔支持。
PCI SR-IOV 支持。
启用 Linux 内核编程接口(Linux Kernel Programming Interface,KPI)兼容层。
启用内核 PLL 支持,以使用外部 PPS 信号,并由 ntpd(8) 监控。更多信息请参见 ntpd 文档:Welcome to the home of the Network Time Protocol (NTP) Project.
软盘驱动器支持。
ATA 控制器
兼容 AHCI 的 SATA 控制器支持。
传统 ATA/SATA 控制器支持。
Marvell 88SX50XX/88SX60XX/88SX70XX 及 SoC SATA 控制器。
Silicon Image SiI3124/SiI3132/SiI3531 SATA 控制器。
SCSI 控制器
AHA2940 及板载 AIC7xxx SCSI 设备。
AHA39320/29320 及板载 AIC79xx 设备
Highpoint RocketRaid 3xxx 系列
QLogic 系列控制器。
QLogic HBA 的固件,通常以模块形式加载。
LSI Logic MPT-Fusion 控制器。
LSI-Logic MPT-Fusion 2
LSI-Logic MPT-Fusion 3
LSI-Logic MPT-Fusion 4
NCR/Symbios Logic SCSI 控制器。
Intel C600 系列 SAS 控制器。
Emulex 光纤通道(Fibre Channel)适配器。
VMware PVSCSI
ATA/SCSI 外围设备
SCSI 总线(ATA/SCSI 设备所必需)。
SCSI 介质切换器
直接访问设备(如磁盘)。
顺序访问设备(磁带等)
光盘
直通设备(用于直接进行 ATA/SCSI 访问)。
机箱服务(SES 和 SAF-TE 协议)。
CAM 目标层。
通过 SCSI 子系统连接的 RAID 控制器
Areca SATA II RAID
Compaq Smart RAID 5 系列控制器。
IBM (Adaptec) ServeRAID
Microsemi smartpqi 驱动
LSI 3ware 9750 SATA+SAS 6Gb/s RAID 控制器
RAID 控制器,Adaptec FSA RAID 系列。
aac 的 SCSI 直通支持(需要 CAM)。
PMC 出品的 Adaptec RAID
Compaq Smart RAID
LSI MegaRAID SAS
Mylex DAC960 系列
LSI/Avago MegaRAID SAS/SATA,支持 6Gb/s 和 12Gb/s
Promise SuperTrak SX6000 RAID 控制器。
NVM Express (NVMe) 支持
基础 NVMe 驱动
将 NVMe 命名空间作为磁盘设备提供,依赖 nvme
通用闪存存储(Universal Flash Storage,UFS)主机控制器接口支持。
Intel 卷管理设备(VMD)支持。
AT 键盘控制器。atkbdc0 同时控制键盘和 PS/2 鼠标。
AT 键盘
PS/2 鼠标
键盘多路复用器
VGA 显卡驱动
启动画面和屏幕保护支持
syscons 是传统的控制台驱动,功能上类似于 SCO 控制台。
添加对光栅化文本模式的支持。
vt 是默认的视频控制台驱动程序。
支持多种 AGP 芯片组。
CardBus 桥
CardBus(Yenta)桥。
CardBus(32 位)总线
串口(COM 端口)
通用 UART 驱动。
并行端口
并行端口
并行端口总线(必需)
打印机
并行端口接口设备
需要 scbus 和 da
多路 I/O 卡和多通道 UART 支持。
使用 iflib 基础设施的 PCI/PCI-X/PCIe 以太网网卡
Intel PRO/1000 系列千兆以太网网卡。
Intel I225 系列 2.5GbE 以太网网卡。
Intel PRO/10GbE PCIE PF 以太网
Intel PRO/10GbE PCIE VF 以太网
Intel 700 系列物理功能(Physical Function,PF)。
Intel 自适应虚拟功能(Adaptive Virtual Function,AVF)。
Intel 800 系列物理功能(Physical Function,PF)。
VMware VMXNET3 以太网。
AMD EPYC 集成网卡(需要 miibus 支持)。
PCI 以太网卡
Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE
AMD Am7900 LANCE 和 Am79C9xx PCnet
Alteon Networks Tigon I/II 千兆以太网
基础驱动。
NVIDIA/Mellanox ConnectX-4 及之后型号,仅限以太网:
依赖
COMPAT_LINUXKPI和 xz(4)mlx5ib 依赖 ibcore 基础设施,默认未内置
用于固件更新
以太网驱动程序
MII 总线支持。适用于使用通用 MII 总线控制器代码的 PCI 以太网卡。
注意
请务必保留
device miibus这行,以便使用这些网卡!
Attansic/Atheros L2 快速以太网
Attansic/Atheros L1 千兆以太网
Atheros AR8131/AR8132 以太网
Atheros AR8121/AR8113/AR8114 以太网
Broadcom BCM5706/BCM5708 千兆以太网
Broadcom BCM440x 10/100 以太网
Broadcom BCM570xx 千兆以太网
Sun Cassini/Cassini+ 和 NS DP83065 Saturn
DEC/Intel 21143 及各种兼容芯片
Agere ET1310 10/100/千兆以太网
Intel EtherExpress PRO/100B (82557, 82558)
Sun GEM/Sun ERI/Apple GMAC
JMicron JMC250 千兆以太网 / JMC260 快速以太网
Level 1 LXT1001 千兆以太网
Marvell/SysKonnect Yukon II 千兆以太网
nVidia nForce MCP 板载以太网
NatSemi DP83820 千兆以太网
RealTek 8139C+/8169/8169S/8110S
RealTek 8129/8139
Silicon Integrated Systems SiS190/191
Silicon Integrated Systems SiS 900/SiS 7016
SysKonnect SK-984x & SK-982x 千兆以太网
Sundance ST201(D-Link DFE-550TX)
Sundance/Tamarack TC9021 千兆以太网
VIA VT612x 千兆以太网
VIA Rhine, Rhine II
3Com 3c90x(“Boomerang”,“Cyclone”)
无线网卡
IEEE 802.11 支持。
启用调试信息
启用 IEEE 802.11s 草案支持。
802.11 WEP 支持
802.11 TKIP 支持
802.11 CCMP 支持
802.11 GCMP 支持
AMRR 发送速率控制算法(Adaptive Multi Rate Retry)。
Atheros CardBus/PCI 网卡
Atheros CardBus/PCI 芯片支持
AR5416 中断缓解
ath 的 SampleRate 发送速率控制算法
Broadcom BCM430x/BCM431x 无线网卡
Broadcom BCM43xx 无线网卡
Intel 2100 无线网卡
Intel 2200BG/2225BG/2915ABG 无线网卡
Intel 4965/1000/5000/6000 无线网卡
Marvell Libertas 无线网卡
Marvell 88W8363 802.11n 无线网卡
Ralink Technology RT2500 无线网卡
Intel 3945ABG 无线网卡
伪设备
核心加密支持
AES-NI OpenCrypto 加速模块
网络回环接口。
VIA Padlock 随机数生成器
Intel Bull Mountain 随机数生成器
以太网支持
802.1Q VLAN 支持
数据包隧道接口。
内存“磁盘”
IPv6 和 IPv4 隧道
固件辅助模块
LZMA 解压支持。
bpf 设备用于启用伯克利数据包过滤器,启用时需注意其对系统管理的影响。
注意
DHCP 依赖
bpf。
USB 支持
启用 USB 调试信息
UHCI PCI 到 USB 接口
OHCI PCI 到 USB 接口
EHCI PCI 到 USB 接口(USB 2.0)
xHCI PCI 到 USB 接口(USB 3.0)
USB 总线(必需)
USB HID 传输
HID 键盘
USB 键盘
磁盘 / 大容量存储——需要 scbus 和 da。
音频支持
通用声卡驱动(必需项)
CMedia CMI8338/CMI8738
Crystal Semiconductor CS461x/428x
Creative SoundBlaster Live! 和 Audigy
Ensoniq AudioPCI ES137x
Intel 高保真音频
Intel、NVIDIA 及其他 ICH AC'97 音频
VIA VT8233x 音频
MMC/SD
MMC/SD 总线
MMC/SD 存储卡
通用 PCI SD 主控制器
VirtIO
通用 VirtIO 总线(必需项)
VirtIO PCI 设备
VirtIO 以太网设备
VirtIO 块设备
VirtIO SCSI 设备
VirtIO 内存气球设备
Linux KVM 半虚拟化支持
KVM 半虚拟化时钟驱动。
Hyper-V 驱动及增强支持
Hyper-V 驱动
Xen HVM 客户机优化
Xen HVM 内核基础设施。
注意
XENHVM 依赖 xenpci 和 xentimer。它们必须同时存在或同时不存在。
Xen EFI 定时器设备
Xen HVM 虚拟机管理器服务驱动
Xen x86 PV 定时器设备
netmap(4) 支持
Netmap 提供了对受支持网卡发送 / 接收环路的直接访问支持。
evdev 接口
在传统驱动中启用 evdev 接口支持。
输入事件设备支持
安装字符设备(CDEV)/dev/uinput。
HID 支持
启用调试信息输出。
通用 HID 支持
通用 HID 总线
用于解决缺失 GPIO 中断支持问题的变通方法。
EFI 设备
EFI 伪设备
EFI 实时时钟
最后更新于