2011-05-22 103 views

回答

2

具有非模塊化內核是嵌入式系統中的常見做法。與桌面/服務器機器不同,在手機上,硬件不太可能發生變化,其中大多數沒有USB端口,因此不需要以模塊形式加載內核功能/硬件支持。

你知道你想使用的文件系統,你需要支持的網絡接口等,所有這些都可以內置到內核中,而不是讓它們動態加載。

標準我用來決定進入內核的內容和內置模塊的內容 - 如果有一些您需要的功能(如網絡接口支持/文件系統支持),請將它們包含在內核中。如果有某些功能只需要某些點(如netfilter模塊),請將它們作爲模塊構建。

+0

感謝您的回覆。但是,這種方法的缺點是,由於內核較大,啓動時間會增加。將模塊放置在sysstem/lib/modules中並在需要時將它們'insmod'不是更好嗎? – alumat 2011-05-22 02:08:59

+0

我已經更新了我的答案,以部分回答你的問題,關於啓動時間,如果它的模塊支持文件系統,你最終必須加載它,所以在啓動時加載它並沒有真正的區別,作爲模塊 – freethinker 2011-05-22 02:25:59

+0

實際上,您可以使用模塊更快地啓動嵌入式系統,即使您最終需要知道您需要的內容。例如,只需構建讓顯示器工作和用戶空間運行到內核所需的內容,以便您可以顯示GUI,然後在後臺加載您的網絡模塊等。這使得系統看起來更快響應,即使它沒有真正完全引導再長一點。 – Roland 2011-05-23 23:20:30