kernel学习之动手添加系统调用(ARM)
发布时间:2016-09-26 16:46:38 所属栏目:Unix 来源:站长网
导读:我是在linux2.6.38中添加的系统调用,在mini6410开发板上测试的。 添加系统调用: 向内核中添加系统调用,需要执行三个步骤: 1、添加新的内核函数 2、更新unistd.h 3、更新系统调用表 1、 在kernel/sys.c中添加函数 asmlinkageint sys_add(int a,int b) {
|
我是在linux2.6.38中添加的系统调用,在mini6410开发板上测试的。 添加系统调用: 向内核中添加系统调用,需要执行三个步骤: 1、添加新的内核函数 2、更新unistd.h 3、更新系统调用表 1、 在kernel/sys.c中添加函数
asmlinkageint sys_add(int a,int b)
{
return a+b;
}
2、 在arch/arm/include/asm/unistd.h 添加: #define_NR_add (_NR_SYSCALL+BASE + 370) 3、在arch/arm/kernel/calls.S中添加CALL(sys_add)以指向新的系统调用 4、编写应用程序测试
#include <linux/unistd.h>
#include <stdio.h>
int main()
{
int re = syscall(370,1,4) ;
printf("%dn",re);
return 0;
}
5、测试效果
查看本栏目更多精彩内容:http://www.bianceng.cn/OS/unix/ (编辑:应用网_镇江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

