Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1663040
  • 博文数量: 695
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4027
  • 用 户 组: 普通用户
  • 注册时间: 2013-11-20 21:22
文章分类

全部博文(695)

文章存档

2018年(18)

2017年(74)

2016年(170)

2015年(102)

2014年(276)

2013年(55)

分类: LINUX

2013-12-28 22:56:51

一、如何给9x25或者9x15(arm-linux)添加属于自己的系统调用:
1.牵扯到修改的几个文件:
kernel/arch/arm/include/asm/unistd.h :为每个系统调用指定一个固定的值。
kernel/arch/arm/kernel/calls.S:系统调用的声明。

2.添加自己的系统调用:
给1中的unistd.h中的最后添加一行:#define  __NR_my_add  (__NR_SYSCALL_BASE+378)   其中378是此文件中未涉及到的数字
函数的声明:给calls.S最后添加一行:CALL(sys_my_add)
函数的定义:在arch/arm/kernel/目录下新建文件test.c

并修改当前目录下的makefile,加入如下一句话:obj-o += test.o

3.调用方式:


4.要是想直接通过my_add调用可以自己再封装一层。

下篇博客将对这个知识点做更深入的研究。

阅读(635) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~