歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> BSD >> FreeBSD內核定制參考

FreeBSD內核定制參考

日期:2017/2/28 11:22:14   编辑:BSD


#
# 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
Copyright © Linux教程網 All Rights Reserved