2.14.4.linux内核的模块化设计
Posted Ocean&Star
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.14.4.linux内核的模块化设计相关的知识,希望对你有一定的参考价值。
2.14.4.1、什么是模块化设计
(1)因为linux内核很庞大,代码量很大、东西很多,如果设计时完全设计成一体(各个文件、各个函数之间紧耦合),复杂度超出了人所能理解的范围。所以模块化设计也是一种必要。
(2)模块化设计就是内核中各个功能模块在代码上是彼此独立的,譬如说调度系统和内存管理系统之间并没有全局变量的互相引用,甚至函数互相调用也很少,就算有也是遵循一个接口规范的。模块化设计的目的就是实现功能模块的松耦合。
2.14.4.2、模块化设计的体现
(1)配置时可裁剪。linux内核在编译之前可以进行配置,配置时可以选择将组成内核的成千上万个模块每一个要或者不要。要了之后还有更多的一些细节的配置。
(2)模块化编译和安装。为了操作方便,逐渐从静态的升级变成了动态的升级(不需要重启系统,更不需要重新烧录系统)。这种动态的升级也是由模块化来支持的。
(3)源码中使用条件编译。这种在uboot中已经见过了。
2.14.4.3、模块化设计的好处
(1)功能可裁剪、灵活性
(2)可扩展性(动态安装卸载、新硬件支持)
(3)利于协作
2.14.4.4、模块化设计是一种普遍性的系统设计原则
以上是关于2.14.4.linux内核的模块化设计的主要内容,如果未能解决你的问题,请参考以下文章
#26 Linux kernel(内核)详解与unamelsmodmodinfodepmodinsmodrmmodmodprobe...命令用法