FreeBSD 使用手冊
Prev | Chapter 8 設定 FreeBSD Kernel | Next

# 8.2 為何需要重新調配、編譯 kernel？

早期的 FreeBSD 的 kernel 被戲稱為 “monolithic” kernel。 這意思是說當時的 kernel 是個大塊頭程式，且只支援固定的硬體而已。 如果您想改變 kernel 的設定，那麼必須編譯一個新的並重新開機，才能啟用。

現在的 FreeBSD 已快速成長到新型態的管理模式，其重要特色是： kernel 功能可以隨時依據需求， 而以動態載入或卸載相關的 kernel module。 這使得 kernel 能夠快速因應新的環境而作調整 (有點像是：筆記型電腦上的 PCMCIA 卡一樣即插即用) ，或是增加其他原本的預設 kernel(`GENERIC`)所沒有的功能。 這種模式，就叫做 modular kernel(核心模組)。

儘管如此，還是有一些功能仍須編譯在 kernel 內才行。因為有時候是因為這些功能與 kernel 結合的相當複雜緊密，而無法將它們弄成可動態載入的 module ；而有時候，則是因為沒有人有空來弄那些 kernel module 的實作。

重新調配、編譯 kernel 幾乎是每位 BSD 使用者所必須經歷的過程。 儘管這項工作可能比較耗時，但在 FreeBSD 的使用上會有許多好處。 跟必須支援大多數各式硬體的 `GENERIC` kernel 相比的話， 自行調配 kernel 不同處在於：可以更『體貼』，只支援『自己硬體』的部分就好。 好處在於，譬如︰

- 開機速度更快：因為自行調配的 kernel 只需要偵測您系統上的硬體， 所以讓啟動所花的過程更流暢快速。

- 佔用的記憶體更少：自行調配的 kernel 通常會比 `GENERIC` 核心使用更少的記憶體，由於 kernel 必須一直存放在記憶體內，因此這就顯得更加重要。因此， 對於記憶體較小的系統來說， 自行調配的 kernel 就可發揮更多的作用、揮灑空間。

- 可支援更多硬體：您可在自行調配的 kernel 增加一些原本 `GENERIC` 核心沒有提供的硬體支援，像是音效卡之類的。

Prev | Home | Next
設定 FreeBSD Kernel | Up | 探測系統硬體

本文及其他文件，可由此下載：ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/。

若有 FreeBSD 方面疑問，請先閱讀 FreeBSD 相關文件，如不能解決的話，再洽詢 <questions@FreeBSD.org>。
關於本文件的問題，請洽詢 <doc@FreeBSD.org>。