LInux编写内核系统调用(Ubuntu18.04)

*LInux编写内核系统调用

不要再入坑了!!!

其实所谓的LInux编写内核系统调用就是在他的内核相关的文件里写入相应函数(按内核函数规范),之后重新编译一个内核就可(注意其实就是重新编译了一个内核!!!),只要在这个过程中没有出现什么问题,自然就可以在用户态调用那个自己编写的系统调用!!!

笔者就贴出自己的实验报告,大伙一看就明白了(当然注意其中*.1都是编写内核函数模块的内容,可以说是用来测试的,沿革说不属于主题内容,大家注意下就可)

系统调用用户态获取当前进程相关信息

实验内容:
1.1编写内核可运行helloworld程序模块并插入内核调用
1.2内核程序中添加上述程序及系统调用,编译内核后在用户态调用
2.1编写内核可运行获取当前进程相关信息程序模块并插入内核调用
2.2内核程序中添加上述程序及系统调用,编译内核后在用户态调用
实验过程:
1.1
写内核模块程序line.c-》插入内核-》编译-》调用内核模块函数-》用户态使用dmesg查看内核模块函数运行结果,输出helloworld以及goodbye

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1.2
在1.1基础上,内核里写系统调用-》编译内核-》用户态写hello.c调用系统调用-》用户态使用系统调用成功-》dmesg查看并运行结果,输出helloworld
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注:下面这种图是修改了还记启动项后出现的grub
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.1
在1.1、1.2基础上,写内核模块程序line.c-》插入内核-》编译-》调用内核模块函数-》用户态使用dmesg查看内核模块函数运行结果,当前进程相关信息(基础)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.2
在1.1、1.2,2.1、2.2基础上,内核里写系统调用-》编译内核-》用户态写hello.c调用系统调用-》用户态使用系统调用成功-》dmesg查看并运行结果,当前进程相关信息
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
参考链接:
Linux内核编程指南
https://blog.youkuaiyun.com/yeshennet/article/details/82315604?utm_medium=distribute.pc_relevant.none-task-blog-title-6&spm=1001.2101.3001.4242
Linux编写系统调用实例hello world01
https://blog.youkuaiyun.com/song_lee/article/details/82995312
Linux编写系统调用实例hello world02
https://blog.youkuaiyun.com/qq_41037945/article/details/91352418?utm_medium=distribute.pc_relevant.none-task-blog-title-7&spm=1001.2101.3001.4242
获取当前进程相关信息
https://www.pianshen.com/article/6117288051/
编写内核模块实现添加系统调用***
https://blog.youkuaiyun.com/Egqawkq/article/details/88970390?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-2.edu_weight&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-2.edu_weight

操作系统课程设计(二):linux内核模块编程
https://blog.youkuaiyun.com/zyf2333/article/details/80043817?utm_source=app

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值