Linux内核模块概述

10 篇文章 0 订阅
3 篇文章 0 订阅

Linux操作系统的内核为单一体系结构(单内核),其与微内核(如Windows操作系统)的最大区别在于所有的内核功能都被编译在一起,成为一个单独的镜像文件。单内核的优点是效率非常高,内核中各个功能模块的交互是通过直接的函数调用来进行的。而微内核则只实现内核中关键和核心的一部分,其他的功能模块单独编译,功能模块之间的交互由微内核提供的通信机制来建立。对于Linux的单内核而言,其缺点就是要增加或删除内核的某种功能,将不得不重新编译整个内核,然后再重新启动,这对于驱动开发前期是非常不友好的。为了弥补这一缺点,Linux引入了内核模块(也可称为模块)的机制。
内核模块为单独编译的一段内核代码,其可以在需要时动态地加载到内核,进而增加内核的功能,当不需要时,可以动态卸载,从而减少内核的功能。无论是加载或卸载,都不再需要重新启动操作系统。这种特性特别适合驱动程序开发工作,开发者只需要单独修改驱动的代码并编译,再将新编译的驱动加载到内核中进行测试(内核模块不一定都是驱动程序,驱动程序不一定都采用模块的形式开发)。
综上所述,内核模块可以有效地减小内核镜像文件的体积,从而减少内存的使用。在实际开发中,并不需要将所有的驱动都编译到内核,根据实际的需求,单独编译驱动程序,并将其加载到内核,可以有效地匹配硬件设备,实现个性化定制。装入内核的模块成为了内核的一部分,通过该模块可以修改内核中的其他部分,因此模块在使用不当的情况下会导致系统崩溃,此时就需要重新启动系统。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值