[問題] dynamic system call

看板Linux作者 (hegemon)時間17年前 (2009/05/10 23:19), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
最近在研究dynamic system call.. 如果要實作dynamic system call的話是否要經過以下步驟? a.在kernel中加入一system call及此system call的pointer. Ex. <headers> long(*my_ptr)(void); EXPORT_SYMBOL(my_ptr); asmlinkage long sys_mycall(void) {........} b.再寫一個module.使用my_ptr將欲執行的function引入 Ex. <headers> extern long(*my_ptr)(void); long kerker(void) {.........} static int kerker_init(void) { my_ptr=kerker; return 0; } static void kerker_exit(void) {my_ptr=NULL;} module_init(kerker_init); module_exit(kerker_exit); c.make完module後用insmod載入 d.接著在test program中使用systemcall kerker. e.以後要修改kerker就更改module再insmod即可. 請問這作法是對的嗎? 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.165.49.65

05/11 16:19, , 1F
到 LinuxDev 板應該會比較多人討論 :p
05/11 16:19, 1F
hegemon:轉錄至看板 LinuxDev 05/11 22:43
文章代碼(AID): #1A1l1g8v (Linux)
文章代碼(AID): #1A1l1g8v (Linux)