1. 操作系统实验之编写内核模块
1.1 实验目的
- 学习和掌握模块加载机制,增加新的内核功能
1.2 实验内容
- 完成增加新的内核功能
1.3 实验步骤
实验步骤:
1.用记事本打开xxx.c按照实验五PPT输入源代码如图5-1至图5-2.
2.输入命令:gcc –c –I/usr/src/linux-2.4/include –Wall xxx.c编译并输入ls查看是否编译成功如图5-3至图5-4.
3.输入命令insmod xxx.o加载这个模块如图5-5.
4.输入命令lsmod查看系统中所有的模块如图5-6至图5-7.
5.输入命令dmesg看系统日志(最后一行)如图5-8至图5-9.
6.输入命令rmmod hello卸载模块并再次输入命令dmesg看系统日志如图5-10至图5-11.
1.4 实验过程
图5-1
图5-2
图5-3
图5-4
图5-5
图5-6
图5-7
图5-8
图5-9
图5-10
图5-11
1.5 心得体会
通过此次实验,我成功编写了操作系统的内核模块,因在核心态下运行故采用printk()函数,输入insmod加载此模块,结果显示loaded表示加载成功,使用dmesg分别成功查看在自己添加内核模块后的系统日志,这次实验相比实验3和实验4显得较为简单但需有耐心,比如自己在操作规程中应该输入lsmod结果输入lsmode显示错误以及编译时gcc -c -I…这里的大写I写成了小写l,所以还要多多留意细节。
2. 致读者
时人不识凌云木,直待凌云始道高