您的位置:首页 > 运维架构 > Linux

Ubuntu 18.04添加系统调用 内核linux-5.0.4

2019-03-27 17:28 141 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/qq_42239081/article/details/88850637

(虚拟机)关于Ubuntu 18.04添加系统调用 内核linux-5.0.4

1.https://www.kernel.org/ 下载Linux内核
并移动到** /usr/src文件夹中 并解压
解压命令:sudo xz -d linux-5.0.4.tar.xz
sudo tar -xf linux-5.0.4.tar.xz
**

解压完成后:
进入内核
cd /usr/src/linux-5.0.4

进入此内核文件中
1./arch/x86/entry/syscalls/syscall_64.tbl 增加系统调用号
335为我添加的调用号

2.include/linux/syscalls.h 增加系统调用的头文件


3./kernel/sys.c 对系统调用的编写 注意此处与前版本内核的不同 define的区别
第一次添加系统调用的时候 没注意到此次区别导致最后程序返回值为一个随机数

执行完后 make menuconfig 进入图形界面 可能会有错误无法进行 根据提示缺少哪个文件包 直接 sudo apt-get install xxx

再执行 sudo make -j4开始内核编译 缺少啥包就安装 j后数字代表核数 数字越大编译越快 虚拟机一核大概4个小时 4核快30分钟


内核编译完成后: sudo make modules执行编译

sudo make modules_install 安装刚刚生成的modules

安装刚刚马克的 sudo make install
到这里编译完成 重启即可调用新的函数!
重启后
写一个test 测试一下


测试运行

mission completed!自己写着留着以后备用hhh

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: