內(nèi)核操作 Linux2.6內(nèi)核驅(qū)動移植參考 |
發(fā)布時間: 2012/8/26 18:27:33 |
隨著Linux2.6的發(fā)布,由于2.6內(nèi)核做了教的改動,各個設(shè)備的驅(qū)動程序在不同程度上要進行改寫。為了方便各位Linux愛好者我把自己整理的這分文檔share出來。該文當列舉了2.6內(nèi)核同以前版本的絕大多數(shù)變化,可惜的是由于時間和精力有限沒有詳細列出各個函數(shù)的用法。
特別聲明:該文檔中的內(nèi)容來自http://lwn.net,該網(wǎng)也上也有各個函數(shù)的較為詳細的說明可供各位參考。 1、使用新的入口 必須包含 <linux/init.h> module_init(your_init_func); module_exit(your_exit_func); 老版本:int init_module(void); void cleanup_module(voi); 2.4中兩種都可以用,對如后面的入口函數(shù)不必要顯示包含任何頭文件。 2、GPL MODULE_LICENSE("Dual BSD/GPL"); 老版本:MODULE_LICENSE("GPL"); 3、模塊參數(shù) 必須顯式包含<linux/moduleparam.h> module_param(name, type, perm); module_param_named(name, value, type, perm); 參數(shù)定義 module_param_string(name, string, len, perm); module_param_array(name, type, num, perm); 老版本:MODULE_PARM(variable,type); MODULE_PARM_DESC(variable,type); 4、模塊別名 MODULE_ALIAS("alias-name"); 這是新增的,在老版本中需在/etc/modules.conf配置,現(xiàn)在在代碼中就可以實現(xiàn)。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |