[問題] dynamic system call
最近在研究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
05/11 16:19, 1F
※ hegemon:轉錄至看板 LinuxDev 05/11 22:43
Linux 近期熱門文章
21
56
PTT數位生活區 即時熱門文章