作者hegemon (hegemon)
看板LinuxDev
标题[问题] dynamic system call
时间Mon May 11 22:43:07 2009
※ [本文转录自 Linux 看板]
作者: hegemon (hegemon) 看板: Linux
标题: [问题] dynamic system call
时间: Sun May 10 23:19:03 2009
最近在研究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
1F:推 nfsnfs:到 LinuxDev 板应该会比较多人讨论 :p 05/11 16:19
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.165.46.175
3F:→ CriLit:不过版本可能有点旧就是了, 细节的部份可能有些不同 05/12 20:46