微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 什么是Linux内核模块

什么是Linux内核模块

时间:08-29 来源:互联网 点击:

什么是模块?从代码的特征上来看,模块就是可完成一项独立功能的一组函数的集合。从使用特征上来看,它在被需要时可以随时被安装,而在不需要时又可以随时被卸载。总之,模块是一个为内核(从某种意义上来说,内核也是一个模块)或其他内核模块提供使用功能的代码块。

准确地说,模块就是一个已编译但未连接的可执行文件。

前面反复介绍Linux是一个一体化的内核,由于内核中的各部件联系紧密,因此这种内核最重要的特点就是运行效率较高。但也就是由于内核中各部件联系紧密,也给它带来了一个致命的缺点:当因某种原因需要增加、扩充时,用户必须对内核全部重新编译一次。所以,为了弥补这个缺点,Linux建立了模块机制。

从内核的角度来看,模块由在运行时可连接并删除的、包含了至少2个函数的代码段。这个代码段一旦被连接到内核,它就可以是内核的一部分,所以它也被叫做内核模块。

从用户的角度来看,模块是内核的一个外挂的配件:需要时可将其挂接到内核上,以完成用户昕要求的任务:不需要时即可将其删除。它给用户提供了扩充内核功能的手段。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top