添加系統(tǒng)調(diào)用(模塊添加法2.6內(nèi)核)

添加系統(tǒng)調(diào)用(模塊添加法2.6內(nèi)核)

ID:18465991

大小:231.50 KB

頁數(shù):5頁

時間:2018-09-18

添加系統(tǒng)調(diào)用(模塊添加法2.6內(nèi)核)_第1頁
添加系統(tǒng)調(diào)用(模塊添加法2.6內(nèi)核)_第2頁
添加系統(tǒng)調(diào)用(模塊添加法2.6內(nèi)核)_第3頁
添加系統(tǒng)調(diào)用(模塊添加法2.6內(nèi)核)_第4頁
添加系統(tǒng)調(diào)用(模塊添加法2.6內(nèi)核)_第5頁
資源描述:

《添加系統(tǒng)調(diào)用(模塊添加法2.6內(nèi)核)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、添加系統(tǒng)調(diào)用(模塊添加法fedora10:2.6.27.5內(nèi)核)一、為什么要使用內(nèi)核模塊的方式添加系統(tǒng)調(diào)用?n編譯內(nèi)核的方式費時間,一般的PC機(jī)都要兩三個小時。n不方便調(diào)試,一旦出現(xiàn)問題前面的工作都前功盡棄。二、用內(nèi)核模塊的方式實現(xiàn)系統(tǒng)調(diào)用有個前提,就是系統(tǒng)必須導(dǎo)出sys_call_table內(nèi)核符號,但是在2.6內(nèi)核和2.4.18以上版本中,sys_call_table不再導(dǎo)出。也就是說模塊中不能再通過簡單的externvoid*sys_call_table[];來獲得系統(tǒng)調(diào)用表地址。但是,即使內(nèi)核不導(dǎo)出sys_call_ta

2、ble,也可以在內(nèi)存中找到它的地址,下面是它的實現(xiàn)方法:第1步:編寫syscall_my.c程序:pptprogram/syscall/module_syscall/syscall_my.c第2步:編寫Makefie文件見pptprogram/syscall/module_syscall/Makefile第3步.執(zhí)行make命令編譯模塊第4步:執(zhí)行insmod命令插入模塊,此時會把自己編寫的系統(tǒng)調(diào)用插入到系統(tǒng)調(diào)用表中。第5步:編寫測試程序test.c見pptprogram/syscall/module_syscall/test.

3、c第6步,編譯測試程序,執(zhí)行測試程序,查看結(jié)果(控制臺終端下)中間的輸出語句就是我們自己定義的系統(tǒng)調(diào)用的輸出。下圖是在圖形用戶終端下的結(jié)果

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。