FreeBSD内核定制参考
作者:FreeBSD内核定制参考
FreeBSD内核定制参考
发表: wxjoshua
时间: 2002/10/11 19:35:24
FreeBSD内核定制参考
meaculpa (2001-06-27 10:46:15)
#
# GENERIC -- Generic machine kernel
#
## 主机类型i386,因为FreeBSD是在X86上运行的嘛
machine "i386"
## CPU 种类,看看自己属于几86嘛
#cpu "I386_CPU" # 386 的电脑
#cpu "I486_CPU" # 486 的电脑
cpu "I586_CPU" # 586 的电脑
#cpu "I686_CPU" # 686 的电脑
## 内核标识,没有特殊意义
ident GENERIC
## 定义一些系统的结构应该保留多大的内存空间,通常
## 16 或 32 就够了, 除非你开站,或运行X,就用 64 吧
## 注意这个值永远小于你的内存数目
maxusers 32
## 一个用户可以执行的进程数限制
options CHILD_MAX=256
## 一个用户可以打开的文件数限制
options OPEN_MAX=256
## 打开内核调试, 一般人用不到
#options DDB
## 允许调试跟踪内存单元(详情見 ktrace, kdump), 还是留给内核黑客用吧
#options KTRACE #kernel tracing
## 没有 FPU (SX) 的朋友用的, 用 DX 的人就不用了
#options MATH_EMULATE #Support for x87 emulation
## 你有64MB以上内存量时指定,单位是K。例如 128MB RAM:
#options "MAXMEM=(128*1024)"
## 支持网络, 一定要有,真是废话
options INET #InterNETworking
## IPX 相关协议
#options IPX #IPX/SPX communications protocols
#options IPXIP #IPX in IP encapsulation (not available
#options IPTUNNEL #IP in IPX encapsulation (not available
#options IPXPRINTFS=0 #IPX/SPX Console Debugging Information
#options IPX_ERRPRINTFS=0 #IPX/SPX Console Debugging Information
## 文件系统设定
## 只有 UFS 是必需的, 其他的可以不必, 要用时 kernel 会用 LKM 载入
## 注意文件系统名有数字时要用双引号括起来哦,看看下面的LINUX文件系统就知道了
options FFS #Berkeley Fast Filesystem
#options NFS #Network Filesystem
#options NFS_NOSERVER #Disable the NFS-server code.
#options MSDOSFS #MSDOS Filesystem
#options "CD9660" #ISO 9660 Filesystem
#options PROCFS #Process filesystem
#options KERNFS #Kernel filesystem
#options NQNFS #Enable NQNFS lease checking
#options FDESC #File descriptor filesystem
#options LFS #Log filesystem
#options MFS #Memory File System
#options NULLFS #NULL filesystem
#options PORTAL #Portal filesystem
#options UMAPFS #UID map filesystem
#options UNION #Union filesystem
#options DEVFS #devices filesystem
##
## 有LINUX文件系统的朋友注意要用下面这一行
#options "EXT2FS" #ext2fs, only in 2.2-CURRENT
## 4.3BSD 兼容, 这是必要的,可能有些程序会用到
options "COMPAT_43" #Compatible with BSD 4.3
## 执行 Linux 的程序文件,就算你利用 LKM 载入,你还是需要这个参数
## 你可以修改 /etc/sysconfig 中的 linux=YES,或是执行 /usr/bin/linux
## 对了,你必需安裝 packages 中的 linux_lib
#options "COMPAT_LINUX" #Linux Emulator
## SCO 二进制程序模拟
#options "IBCS2"
## 一开机时 SCSI 卡会先等待设备准备几秒钟时间, 对于一些比较慢的 SCSI设备,
## 如 CDROM 而言是需要的, 最小值是 2, 选择适合你的值就好了
options "SCSI_DELAY=4" #Be pessimistic about Joe SCSI device
## 允许使用者截取控制台信息,对于 xconsole 之类的程序是必要的
options UCONSOLE #Unix console
## 虚拟控制台最大数目, Alt-F1 到 Alt-F12 等等, 只是定义上限而已
## 真正能用的 virtual console 必需看 /etc/ttys 定义 vty 的数目
## 本值內定是 16
options "MAXCONS=8" #Max number for virtual console
## 给 WINE (MS-Windows Emulator) 用的
#options USER_LDT #For WINE, MS-Windows Emulator
## 使用 QUOTA限额
#options QUOTA #For quotas
## SYSV IPC/SHM (BBS 跟 X-window 及 COMPAT_LINUX 需要用), 这是必要的
options SYSVMSG,SYSVSEM,SYSVSHM #For SYSV-IPC
## LKM 的载入器, 这是必要的(在 2.1.5R 以后已经废除,成为内定参数)
#options LKM #Loadable kernel module loader
## 如果你用 ISA 的 SCSI 卡, 又有大於 16MB 的内存, 必需打开此项, 否则无法
## 使用 >16MB 内存. 如果你是用 EISA/VL/PCI 的 SCSI 卡就不需要了
## 打开它会减低一点点速度, 没事不要开 (用 IDE 的当然不用了)
#options BOUNCE_BUFFERS #include support for DMA bounce buffers
## 要用 IP-Firewall 才需要,你可以用 LKM 载入
#options IPFIREWALL #Firewall code
#options IPFIREWALL_VERBOSE #Print information about dropped packets
#options IPACCT #Used with ipfirewall
## 要用 IP-Firewall 或要当 router 才要
## 在 2.2-960323-SNAP 后已废除, 以 sysctl 打开 (見 /etc/sysconfig)
#options GATEWAY #Internetwork gateway
## Multicast routing, 做多路由器时用
#options MROUTING # Multicast routing
## 允许 swap device 的数目 (內定 20)
#options NSWAPDEV=20
## 指定 root partition 在那个硬盘上
#在第一个SCSI HD上
config kernel root on sd0
#在第一个IDE HD上
#config kernel root on wd0 dumps on wd0
## 使用 ISA 总线
controller isa0
## 使用 EISA 总线
#controller eisa0
## 使用 PCI 总线
controller pci0
## 软驱控制器
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
# 软驱A
disk fd0 at fdc0 drive 0
# 软驱 B
# disk fd1 at fdc0 drive 1
## IDE 硬盘控制器
controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr
disk wd0 at wdc0 drive 0
disk wd1 at wdc0 drive 1
## 第二个 IDE 硬盘控制器, 有接第二个IDE控制器时才用
#controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr
#disk wd2 at wdc1 drive 0
#disk wd3 at wdc1 drive 1
## IDE(ATAPI 规格) 光驱
#options ATAPI #Enable ATAPI support for IDE bus
#options ATAPI_STATIC
#device wcd0 #IDE CD-ROM
## SCSI 控制卡, 请从 /sys/i386/conf/LINT 中读取详细说明
#controller ahc0
#controller ncr0
#controller bt0 at isa? port "IO_BT0" bio irq ? vector btintr
#controller uha0 at isa? port "IO_UHA0" bio irq ? drq 5 vector uhaintr
#controller ahc1 at isa? bio irq ? vector ahcintr
#controller ahb0 at isa? bio irq ? vector ahbintr
#controller aha0 at isa? port "IO_AHA0" bio irq ? drq 5 vector ahaintr
#controller aic0 at isa? port 0x340 bio irq 11 vector aicintr
#controller nca0 at isa? port 0x1f88 bio irq 10 vector ncaintr
#controller nca1 at isa? port 0x350 bio irq 5 vector ncaintr
#controller sea0 at isa? bio irq 5 iomem 0xc8000 iosiz 0x2000 vector seaintr
## SCSI 总线支持, 使用 SCSI 必备的
#controller scbus0
## SCSI HD SCSI硬盘
#device sd0 #Only need one of these, the code dynamically grows
## SCSI CDROM SCSI光驱
#device cd0 #Only need one of these, the code dynamically grows
## SCSI tape SCSI磁带机
#device st0 #Only need one of these, the code dynamically grows
## SCSI optical disk (MO) SCSI的MO驱动器
#device od0 #Only need one of these, the code dynamically grows
## SCSI media changers (Juke-Box)
#device ch0 #Only need one of these, the code dynamically grows
#------------------ 用AT-总线的光驱 (非 ATAPI,现在很少了吧) ---------------
## Mitsumi CDROM 美上美光驱
#controller mcd0 at isa? port 0x300 bio irq 10 vector mcdintr
## SONY CDROM 索尼光驱
#controller scd0 at isa? port 0x230 bio
## Panasonic CDROM 松下光驱
#controller matcd0 at isa? port ?
## QIC tape QIC磁带机
#device wt0 at isa? port 0x300 bio irq 5 drq 1 vector wtintr
## console 屏幕驱动程序, 这是必备的,少了启动不了
device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr
## 调用 FPU 的机制, 无论有无 FPU 都要有, 都是必要的
device npx0 at isa? port "IO_NPX" irq 13 vector npxintr
## COM1 到 COM4 串口设备1-4
device sio0 at isa? port "IO_COM1" tty irq 4 vector siointr
device sio1 at isa? port "IO_COM2" tty irq 3 vector siointr
#device sio2 at isa? port "IO_COM3" tty irq 5 vector siointr
#device sio3 at isa? port "IO_COM4" tty irq 9 vector siointr
## Joystick 操纵杆设备
#device joy0 at isa? port "IO_GAME"
## 如果你有 Logitech or ATI InPort 总线鼠标的卡, 就要將此打开
## 請注意一般人使用的是 serial mouse 不是 bus mouse
#device mse0 at isa? port 0x23c tty irq 5 vector ms
## 给 PS/2 mouse 用的
#device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr
#options PSM_NO_RESET
## 打印机端口
device lpt0 at isa? port? tty irq 7 vector lptintr
#device lpt1 at isa? port? tty
#device lpt2 at isa? port? tty
## 网卡, 读一下 /sys/i386/conf/LINT,注意PCI卡不用指定硬件资源,系统会自测
#device ed0 at isa? port 0x280 net irq 5 iomem 0xd8000 vector edintr
#device ed1 at isa? port 0x300 net irq 5 iomem 0xd8000 vector edintr
#device eg0 at isa? port 0x310 net irq 5 vector egintr
#device ep0 at isa? port 0x300 net irq 10 vector epintr
#device ie0 at isa? port 0x360 net irq 7 iomem 0xd0000 vector ieintr
#device ix0 at isa? port 0x300 net irq 10 iomem 0xd0000 iosiz 32768 vector ixintr
#device le0 at isa? port 0x300 net irq 5 iomem 0xd0000 vector le_intr
#device lnc0 at isa? port 0x280 net irq 10 drq 0 vector lncintr
#device lnc1 at isa? port 0x300 net irq 10 drq 0 vector lncintr
#device ze0 at isa? port 0x300 net irq 5 iomem 0xd8000 vector zeintr
#device zp0 at isa? port 0x300 net irq 10 iomem 0xd8000 vector zpintr
#device de0 #PCI --- DEC chip 21x4x series (such as DE530CT+)
#device vx0
#device fpa0
#device fxp0 #PCI --- Intel chip
## SB16 声卡, 其他的声卡参考 /sys/i386/conf/LINT
#controller snd0
#device sb0 at isa? port 0x220 irq 5 conflicts drq 1 vector sbintr
#device sbxvi0 at isa? drq 5
#device sbmidi0 at isa? port 0x330
#device opl0 at isa? port 0x388
## SB32/AWE32/AWE64 声卡, 其他的声卡参考 /sys/i386/conf/LINT
#controller snd0
#device sb0 at isa? port 0x220 irq 5 conflicts drq 1 vector sbintr
#device sbxvi0 at isa? drq 5
#device sbmidi0 at isa? port 0x330
#device opl0 at isa? port 0x388
#device awe0 at isa? port 0x620
## PC Speaker Audio (用 PC Speaker 模拟声卡,效果很烂的)
#device pca0 at isa? port IO_TIMER1 tty
## 网络回路, 这是必备的,
pseudo-device loop
## 使用以太网接口, 这是必备的
pseudo-device ether
## Berkerley 包过滤, tcpdump ,dhcp 需要用, 这是必备的
pseudo-device bpfilter 4
## syslogd 需要, 这是必备的
pseudo-device log
## 使用者 tty 上限, 限制最大登录人数, 預设上限 256
pseudo-device pty 256
## PC speaker, 这是必备的
pseudo-device speaker
## 可以直接执行 gzip 的程式, 这是必备的,不过只支持a.out格式程序
pseudo-device gzip # Exec gzipped a.out's
## 支持监控 tty 使用者
pseudo-device snp 4 #Snoop device - to look at pty/vty/etc..
## 把一个文件模拟成一个分驱, 通常用來做为交换文件或读磁盘镜像文件时用
pseudo-device vn 4 #Vnode driver (turns a file into a device)
## 内核级PPP (man pppd),可用 LKM 载入
#pseudo-device ppp 2 #Point-to-point protocol
## 用户级PPP (man ppp),可用 LKM 载入
#pseudo-device tun 1 #Tunnel driver(user process ppp)
## SLIP,可用 LKM 载入,现在很少用了
#pseudo-device sl 2 #Serial Line IP
## 虛拟网卡驱动, 可任意写入,读取信息, 用于开发网路相关程序,可用 LKM 载入
#pseudo-device disc #Discard device
## 提供 RAID-0 Striping,Mirroring,parity(not complete) 的功能
## 可以有效的将多个 SCSI 磁盘合并起來,成为一个高速的文件系统
## 详情请 man ccdconfig
#pseudo-device ccd 4
-- 错误在所难免,欢迎批评指正
have fun!
meaculpa.yeah.net
icq:59166445