進行之前
您應該先將您的硬件列表清單放在手邊
並前往
點選頁面下方您所安裝的版本其 Hardware Notes 的連結字樣
如︰
;
(June
) Announcement
Release Notes Hardware Notes Errata
再依您的平台架構點選連結 (i
) 進入硬件支持的說明頁
這兒呈列了該版本所支持的硬件裝置
您可以利用浏灠器的頁面搜尋功能
搜尋您的硬件關鍵詞
並將該硬件的驅動程序代號
如︰rl(
) ( rl 為該硬件的驅動程序代號 )
給記錄到硬件清單中相對映的裝置旁
以便在定義核心設定檔時
能夠針給裝置部份予以正確的選項
或者您也可以查看 /usr/src/sys/i
/conf/LINT 檔案
取得硬件裝置的驅動程序代號
再來
請您先快速的看過 GENERIC
這個核心設定檔
其中︰
若將其分門別類的話
大致上又可分為如下類別︰
(
)必要的參數
這些是一定要有的參數設定
· machine i
設定硬件平台架構架構
目前 FreeBSD 支持 i
alpha
pc
等平台
相信您一定是使用兼容 IBM PC 架構的個人計算機
這在 FreeBSD 中歸類於 i
的類別
因此這兒一定是 machine i
如果您是使用 alpha 架構的機器
則此處一定是 machine alpha
本書所寫內容皆是於 i
的系統架構下執行的
若您是在 alpha 系統架構下要來安裝使用 FreeBSD 的話
請以參考即可
· cpu Ixxx_CPU
設定 CPU 的等級
您只需針對機器所使用的 CUP 等級來設定即可
全部設定時
系統會自行偵測機器所使用的 CPU 等級
如果您不確定您的 CPU 等級
可以執行 shell# dmesg | more 來查看︰
Copyright (c)
The FreeBSD Project
Copyright (c)
The Regents of the University of California
All rights reserved
FreeBSD
STABLE #
: Sun Feb
:
:
CST
:/usr/src/sys/compile/WEONTimecounter
i
frequency
HzTimecounter
TSC
frequency
HzCPU: Pentium/P
C (
MHz
class CPU )Origin =
GenuineIntel
Id =
x
Stepping =
Features=
x
bfreal memory =
(
K bytes)
·
如上黃色字樣
表示此台機器所使用的 CPU 為 I
_CPU 的等級
因此我們只需為此台機器設定 cpu I
_CPU 的參數
其它三個 CPU 等級設定參數則在前方加上 # 批注起來
· ident GENERIC
ident 是作為識別不同 kernel 用的
你在開機或執行查看系統信息類的指令時皆可看到
在為 kernel 設定識別名稱時
不要使用到 C 語言的特殊字眼
比如 DEBUG
以免在編譯時系統將此識別名稱當作是編譯參數來傳送給 C 編譯器
老話常提
用主機名稱來做為 kernel 識別名稱是不錯的抉擇
·maxusers
這是用來定義一些系統數據結構的大小
而不是指上線人數的上限值
大致上來說
maxusers 值限定了系統同一時間可有多少個執行程序 (processes)
其算法是
+
* maxusers
而系統在開機時就占用了至少
個 processes
因此您該衡量一下您的工作環境而來計算該設置為多少
一般來說
~
之間是個通用值
如果您不確定的話
雖然 maxusers 限定了系統同時間可執行的 processes
但是並不就表示設的愈大愈好
因為設得太大
kernel 將浪費許多空間在一些沒有用到的數據結構上
不但浪費寶貴的內存空間
同時系統的執行效能也會變慢
如果您所使用的版本 GENERIC 核心設定文件
其 maxusers 默認值為
則表示讓系統根據所擁有的物理內存 (RAM) 大小來決定
因此如果您擁有超過
MB 的 RAM
您可以先行設定為
由系統為您決定
再持續觀察是否有『proc table full』此類的訊息出現?若有的話再自行由
開始來設定
然後慢慢調高
直到不再出現此類訊息為止
若您的 RAM 未達
MB
但是使用的版本有支持自動偵測的功能的話
建議您還是乖乖的設定測試較好!!
(
)一般性參數
這些參數可視個人需要來決定使用與否
·options MATH_EMULATE
只要您有用到小數點的運算時
您就會需要浮點運算器 (FPU)
在早期的 CPU 時代
有提供 FPU 功能的 CPU 其價格不菲
因此另有不提供 FPU 功能的平價 CPU 面世
例如
SX
SX
此參數即提供一軟件仿真的方式
來提供您浮點運算的功能
但這個浮點運算仿真器並非十分精確
如果您需要准確度更高的仿真
可使用 GPL_MATH_EMULATE (GUN 的數學浮點運算仿真)
您不能同時使用這兩個仿真器
只能二擇其一
現今的 CPU 都已內建 FPU 了
除非您確認您的 CPU 未內建 FPU
或等級早於
DX 的 CPU
不然您不會需要此參數
請將它批注起來
提供動態加載
·options UCONSOLE
這在 X
Window 下很有用喲
比如您可以執行 xconsole 或 xterm
C 來監看 console 的訊息
如果您要使用 X
Window 的話
建議是保留此參數
若不用 X
Window 的話
隨意啦!!
·options USERCONFIG
如果您希望在開機時能夠在 boot: 提示符號時輸入
c 來設定核心或裝置參數時
您就需要將此功能給編進核心裡頭
不過一般我們量身訂做的核心都是最合用的
並不需要再另行做設定
因此平常都是不用的
只有在制作開機片時才指定進來
·options VISUAL_USERCONFIG
USERCONFIG 的窗口模式
使用此參數時需同時使用 USERCONFIG 參數
使用此功能
在進入參數設定選單時
會自動進入窗口模式
·options P
_
B
options _KPOSIX_PRIORITY_SCHEDULING
年POSIX標准中新加入的實時系統擴充選項
ports裡面某些應用軟件( 像 Star office)會用到這些選項
·options SMP
options APIC_IO
如果您的系統是多個 CPU 的話
而且您想使用多 CPU 來運作
您一定要有這兩個選項
而且在必要參數中 CPU 等級的選項裡
cpu I
_CPU 與 cpu I
_CPU 兩個選項一定要批注或刪除掉
不然您應該會有
% 的機會不能開機 ^_^
在預設中
這兩個選項是不使用的
所以沒事不要將它的批注給刪除哦
或者直接讓這兩行從您的核心設定檔中消失也是不錯的保安措施
(
)兼容性參數
options COMPAT_
#Compatible with BSD
[KEEP THIS!]options SYSVSHM #SYSV
style shared memoryoptions SYSVMSG #SYSV
style message queuesoptions SYSVSEM #SYSV
style semaphores
這些參數可視個人需要來決定使用與否
·options COMPAT_
提供
BSD 與更早之前版本的兼容模式
這是一定要的
因為有些程序在執行時需要它的存在
·options SYSVSHM
支持 System V shared memory
如果您要使用 X
Window 您最好加入此參數
因為許多程序都會利用到它來加快顯示速度
·options SYSVMSG
支持 System V semaphores
不是很常用到的
不過只占一絲絲內存
·options SYSVSEM
支持 System V messages
也是只占用一絲絲的內存
如果您打算架設 BBS 系統
您一定要用到它
現在已有越來越多程序會運用到 SYSV
style 的功能
而它們占用的內存空間並不足為道
為了您日後的方便
建議您將它們都選用吧
因為取消它們並不會為您的系統效能帶來什麼明顯的幫助(有等於沒有)
但需要它們時一定要重編核心
花時間又加重系統的負擔
想想哪個劃算吧 ^_^
您可以利用 ipcs 指令來查看任何使用到上述三個 System V 功能的 processes
(
)偵錯性參數
#makeoptions DEBUG=
g #Build kernel with gdb(
) debug symbolsoptions KTRACE #ktrace(
) support
非系統
程序開發人員不需此類功能
·makeoptions DEBUG=
g
激活 kernel 除錯器
·options KTRACE
利用 ktrace 指令來追蹤系統呼叫
除非您想為系統除錯或是要開發程序
不然您不需要啟用這些功能
或者您想要試試能夠忍受多慢的系統效能的話
您可以考慮啟用它們 ^_^
(
)檔案系統支持
options FFS #Berkeley Fast Filesystemoptions FFS_ROOT #FFS usable as root device [keep this!]options MFS #Memory Filesystemoptions MD_ROOT #MD is a potential root deviceoptions NFS #Network Filesystemoptions NFS_ROOT #NFS usable as root device
NFS requiredoptions MSDOSFS #MSDOS Filesystemoptions CD
#ISO
Filesystemoptions CD
_ROOT #CD
ROM usable as root
CD
requiredoptions PROCFS #Process filesystemoptions UFS_DIRHASH # 運用一些內存來加速大型目錄資料的更新管理作業soptions SOFTUPDATES #
From:http://tw.wingwit.com/Article/program/Oracle/201311/17337.html