ubuntu linux14.04添加系统调用

ubuntu添加系统调用:1、准备一套内核源码,可以到官方网站下载;2、源码可以放在ubuntu任何文件夹下,将源码解压。我下载的内核是3.19.2.放到了/home文件夹下;3、修改system table;转到目录/home/linux-3.19.2/arch/x86/syscalls在超级用户的状态下,修改syscall_64.tbl(我是64位系统)在最后一行的添加323(我系统上已存在322条系统调用) 64 mycall(自定义命名) sys_mycall4、add header file to include folder:转到目录/home/linux-3.19.2/include/linux在超级用户的状态下,修改syscalls.h在文件最后一行(after #endif)添加:asmlinkage int sys_mycall(int);5、编写系统调用c程序mycall.c并保存至linux-3.19.2/kernel目录下#include <linux/kernel.h>#include <linux/init.h>#include <linux/syscalls.h>#include <linux/linkage.h>asmlinkage int sys_mycall(int num){return num;}6、create the Kconfig file转到目录/home/linux-3.19.2/kernel创建文件Kconfig.mycallconfig MYCALL bool "prints my call is running" default y help This will print my call is running7、edit the Makefile of Kernel directory目录同6:将mycall.o添加到obj-y列表中8、转到目录/home/linux-3.19.2修改MakefileEXTRAVERSION=.SYSCALL(之后内核的名字)9、简化编译(节省时间)/home/linux-3.19.2make localmodconfig#需要有.config文件,可以到发行版那拷贝一个命名为.configmake -j2#双核同时编译make modules_install#编译模块make install#安装内核重启进入ubuntu高级选项选择linux-3.19.2.SYSCALL命令行grep mycall /proc/kallsyms

检查系统调用是否添加成功

参考:

,你有没有这样的感觉,坐在一列火车上,

ubuntu linux14.04添加系统调用

相关文章:

你感兴趣的文章:

标签云: