跳至內容

英文维基 | 中文维基 | 日文维基 | 草榴社区

動態內核模組支援

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書
動態內核模組支援
原作者Gary Lerhaupt
開發者Dell
首次發佈2003
目前版本2.6.1(2018年4月25日,​6年前​(2018-04-25
原始碼庫 編輯維基數據連結
程式語言Bash (Unix shell)
作業系統Linux
許可協定GNU General Public License
網站linux.dell.com/dkms/

動態內核模組支援 (Dynamic Kernel Module Support,DKMS)是用來生成Linux內核模組的一個框架,其原始碼一般不在Linux內核原始碼樹。 當新的內核安裝時,DKMS支援的內核裝置驅動程式 到時會自動重建。 DKMS可以用在兩個方向:如果一個新的內核版本安裝,自動編譯所有的模組,或安裝新的模組(驅動程式)在現有的系統版本上,而不需要任何的手動編譯或預編譯軟件套件需要。例如,這使得新的顯示卡可以使用在舊的Linux系統上。

DKMS是由戴爾的Linux工程團隊在2003年寫的。它已經被許多Linux發行版所包含,如Ubuntu 8.10[1](包括後來的版本)和Fedora[2] 它是以GNU通用公共許可證(GPL)v2或以後的條款發佈下的自由軟件。DKMS原生支援RPMDEB軟件套件格式。

動態內核模組支援旨在建立一個內核相關模組源可駐留的框架,以便在升級內核時可以很容易地重建模組。這將允許 Linux 供應商提供較低版本的驅動程式,而無需等待新內核版本發行,同時還可以省去嘗試重新編譯新內核模組的客戶預期要完成的工作。Oikawa等人在1996年提出一種與LKM類似的動態核心模組(DKMs)技術。與LKM一樣,DKMs以檔案的形式儲存並能在系統執行過程中動態地載入和解除安裝。DKMs由一個用戶層的DKM伺服器來管理,並非由內核來管理。當核心需要某模組時,由DKM伺服器負責把相應的DKM載入;當核心的主記憶體資源緊缺時,由DKM伺服器負責解除安裝一個沒有被使用的DKM。缺點是所有的DKM是儲存在本地系統上的,佔用了大量寶貴的儲存空間。

參考資料

[編輯]

外部連結

[編輯]