89.内核模块基本概念

一、现代内核派系

1、宏内核:

如下图左

关键功能 (如内存管理、进程调度…,不可裁剪)在 内核空间 提供。
服务功能 (如网络服务…,可裁剪)也在 内核空间 提供。

优点:运行效率高
缺点:扩展性较差

2、微内核:

如下图右

关键功能内核空间 提供。
服务功能用户空间 提供。

优点:安全性、扩展性较高
缺点:运行效率较低

宏内核与微内核、Linux内核与Unix内核的区别

在这里插入图片描述

二、linux内核模块机制

linux属于 宏内核
但是引入了 内核模块的机制 来解决linux内核 可扩展性和可维护性相对较差 的缺陷。

三、内核模块加载/卸载

使用 insmod / modprobe 加载。

使用 rmmod / modprobe -r 命令卸载。

四、内核模块入口/出口

module_init() :加载模块时该函数自动执行,进行初始化操作。(module_init解析)

module_exit() :卸载模块时函数自动执行,进行清理操作。

这两个函数定义在 include/linux/init.h

五、内核模块信息声明

MODULE_LICENSE() :表示模块代码接受的软件许可协议,Linux内核遵循GPL V2开源协议,内核模块与linux内核保持一致即可。
MODULE_AUTHOR() :描述模块的作者信息。
MODULE_DESCRIPTION() :对模块的简单介绍。
MODULE_ALIAS() :给模块设置一个别名。

这些宏定义在 include/linux/module.h

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值