可載入核心模組
此條目沒有列出任何參考或來源。 (2013年11月28日) |
可載入核心模組(英語:Loadable kernel module,縮寫為 LKM),又譯為載入式核心模組、可裝載模塊、可加載內核模塊,或直接稱為內核模塊,是一種目的檔,在其中包含了能在作業系統內核空間運行的程式碼。它們運行在核心基底(base kernel),通常是用來支援新的硬體,新的檔案系統,或是新增的系統呼叫。
Microsoft Windows及類UNIX系統都支援這個功能,但在不同的作業系統中,它有不同的名稱,如FreeBSD 稱為核心載入模組(kernel loadable module,縮寫為KLD),Mac OS X 稱為核心擴充(kernel extension,縮寫為KEXT)。也有人稱它為核心可載入模組(Kernel Loadable Modules,縮寫為KLM) ,或核心模組(Kernel Modules,KMOD)。
技術特點
編輯可載入核心模組可以讓作業系統在需要新功能時動態載入隨機存取記憶體(RAM),減少開發及使用上的困難。若沒有此模組,作業系統需要在開機時將所有可能需要的功能一次加入內核之中,但其中許多功能從來不會被使用;這不但浪費RAM空間,而且每次在增加新功能時,使用者需要重新編譯整個內核,之後重新開機。
然而與微內核下的系統服務不同,內核模塊並不是獨立進程,也沒有獨立的地址空間,而是與內核的其他部分共享內核地址空間。這對內核模塊的質量提出了很高的要求,因為如果它出現了bug,會有損害整個系統內核的危險。