内核版本:3.4.24
大家发现什么问题一定要告诉我,大家一起学习啦
######### 向内核中添加系统调用 ##########
1.系统调用是和平台相关的arm平台的系统调用的汇编代码,路径:
vim <path>//linux3.4/arch/arm/kernel/entry-common.S
//从333行开始
2.添加系统调用的步骤
//存着系统调用表,系统调用的函数入口就是这
//系统调用号就是基于基地址的配偏移地址
vim <path>/linux3.4/arch/arm/kernel/calls.S
390 /* 378 */ CALL(sys_myadd)
//在头文件中添加宏定义
vim <path>//linux3.4/arch/arm/include/asm/unistd.h
470 #define __NR_myadd (__NR_SYSCALL_BASE+378)
//新加系统调用的具体实现,以简单加法为例
vim <path>//linux3.4/arch/arm/kernel/sys_arm.c
135 //asmlinkage 系统调用必须加
136 asmlinkage long sys_myadd(int a, int b)
137 {
138 return a + b;
139 }