Linux 什么是内核模块《Rice linux 学习开发》

本文介绍了Linux内核模块的概念,其作为扩展内核功能的方式,允许在需要时动态加载和卸载,避免内核过于庞大。内核模块提供了灵活性,减少了内核映像尺寸并节省开发时间,但可能影响性能且使用不当可能导致系统崩溃。通过一个简单的"Hello World"模块示例,展示了模块的编写、构建过程,并解释了如何在Linux系统上加载和卸载模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux内核是整体性结构,各个子系统紧密联系,上接用户控件,下接硬件,作为一个大程序在内核控件运行。

如果将所有的设备驱动和内核功能都集成在内核中,则内核会不断的庞大,对我们的内核裁剪也会带来更大的挑战,为了解决这个问题,Linux内核引入内核模块机制,通过动态加载内核模块,从而实现在运行过程中扩展内核的功能。

内核模块是什么?

①  内核模块是一种没有经过链接,不能独立运行的目标文件,是在内核空间中运行的程序。经过链接装载到内核里面成为内核的一部分,可以访问内核的公用符号(函数和变量)。

②  内核模块可以让操作系统内核在需要时载入和执行,在不需要时由操作系统卸载。它们扩展了操作系统内核的功能却不需要重新启动系统。

③  如果没有内核模块,我们不得不一次又一次重新编译生成单内核操作系统的内核镜像来加入新的功能。这还意味着一个臃肿的内核。

 

模块机制的优点:

①  减小内核映像尺寸,增加系统灵活性;

②  节省开发时间;修改内核,不必重新编译整个内核。

③  模块的目标代码一旦被链入内核,作用和静态链接的内核目标代码完全等价。

 

模块机制的缺点:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值