一、
(这是最后一个实验啦,完结撒花!前面两个实验已经写过记录,第三个内核模块实验中间有些步骤没搞明白,所以就没写。下面有同级校友写的博客,1-4篇都很全很详细,大家可以学习参考。这篇博客中Makefile参考了他的。然后就 ~ 一起学习共勉!)
二、
三、
1. 新建目录,vim rwbuf.c .这是我们设备驱动需要的文件。
2. 下来写Makefile.
3. 好了之后,管理员身份make。 sudo make.
4. make之后生成文件中有 rwbuf.ko,我们给 /dev 路径下添加设备。
rwbuf 是名称,c 是一个字符型的设备。60为主设备号,0是次设备号。
(我这里已经添加配置过了,但命令是一样的)
5. 然后我们去 /dev 这个路径检查一下我们的设备。 cd /dev; ll rwbuf;
6. 上面就说明添加成功了。为了避免权限问题同时让下面步骤顺利进行,sudo chmod 777 /dev/rwbuf 。修改权限。
7. 然后将rwbuf.ko插入,安装驱动设备。
8. 编写测试程序,试试效果。编写mtw.c, mtr.c, mti.c . 逐个编译。
7. 然后测试一下。输入我们的学号,然后读取,打印;清空读取之后再打印看一下。
题目要求多余1024个后面的内容自动舍去,这里没做测试,因为不难实现。
注意将字符数组的最后一位设置为 ‘\0‘。 这是c风格的标志结束位。
四、
很感谢大家的阅读、推荐、支持。希望在学习的路上更加努力!
(下面是校友的博客。https://moefactory.com/3041.moe)