当前位置: 技术问答>linux和unix
添加自己的系统调用的问题,请大侠帮忙
来源: 互联网 发布时间:2016-09-01
本文导语: 1: 下载的内核代码放在linux目录下,我在其中include/asm-generic/unistd.h添加的一个自己的系统调用号“#define __NR_helloworld 350” 然后修改系统调用表,在arch/x86/kernel/syscall_table_32.S中添加了“.long SYS_helloworld”, 请问...
1:
下载的内核代码放在linux目录下,我在其中include/asm-generic/unistd.h添加的一个自己的系统调用号“#define __NR_helloworld 350”
然后修改系统调用表,在arch/x86/kernel/syscall_table_32.S中添加了“.long SYS_helloworld”,
请问“.long SYS_helloworld“这句话是不是得必须放在系统调用表的第350项
2:
还有编译安装完新内核后,测试自定义系统调用时,是不是还得修改/usr/include/asm/unistd.h
这个文件,在里面再添加一次”#define __NR_helloworld 350“啊?
谢谢了,请指教。
下载的内核代码放在linux目录下,我在其中include/asm-generic/unistd.h添加的一个自己的系统调用号“#define __NR_helloworld 350”
然后修改系统调用表,在arch/x86/kernel/syscall_table_32.S中添加了“.long SYS_helloworld”,
请问“.long SYS_helloworld“这句话是不是得必须放在系统调用表的第350项
2:
还有编译安装完新内核后,测试自定义系统调用时,是不是还得修改/usr/include/asm/unistd.h
这个文件,在里面再添加一次”#define __NR_helloworld 350“啊?
谢谢了,请指教。
|
2. 测试时应该是你要的头文件中有那句,一般你install的时候会装上的吧,没有的话也该是在/usr/include/linux/unistd.h这个文件里改。
|
1.这个不清楚,看上去是的,你可以看看你下的内核里面已经到多少号了,加1做你的那个号,然后直接加在后面就好了吧