linux内核模块实验,linux内核模块实验(2学时)

第一个内核模块实验

一:预习要求:

(1 )做本实验之前,请复习相关内核模块知识。

(2 )请了解内核模块的编写、编译及安装与卸载方法。

(3 )请学习内核打印函数printk() 的用法。

(4 )请复习Makefile 文件的编写。

二:实验目的:

(1 )掌握内核模块的组成部分。

(2 )掌握内核模块的编译、安装与卸载方法。

(3 )学会查看内核模块的信息。

三:实验任务:

编写一个内核模块module,向外导出两个函数,分别是“求累积和”和“求阶乘”功能。编写另两个内核模块module1、module2,分别使用上面module模块中的函数,实现计算。注意路径清晰,分别在三个目录下编写。

四:实验原理及方法:

Linux 内核模块(LKM )是一些在启动的操作系统内核需要时可以载入内核执行的代码块,不需要时由操作系统卸载。它们扩展了操作系统内核功能却不需要重新编译内核、启动系统。如果没有内核模块,就不得不反复编译生成操作系统的内核镜像来加入新功能,当附加的功能很多时,还会使内核变得臃肿。一个Linux 内核模块主要由以下几个部分组成:

(1) 模块加载函数( 必须) :当通过insmod 或modprobe 命令加载内核模块时,模块的加(1) 模块加载函数( 必须) :当通过insmod 或modprobe 命令加载内核模块时,模块的加载函数会自动被内核执行,完成本模块相关初始化工作。

(2) 模块卸载函数(必须):当通过rmmod 命令卸载模块时,模块的卸载函数会自动被内核执行,完成与模块加载函数相反的功能。

(3) 模块许可证声明(必须):模块许可证(LICENCE )声明描述内核模块的许可权限,如果不声明LICENCE, 模块被加载时将收到内核被污染的警告。大多数情况下内核模块应遵循GPL 兼容许可权。L inux2.6内核模块最常见的是

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值