zoukankan      html  css  js  c++  java
  • 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、模块化设计是一种普遍性的系统设计原则

  • 相关阅读:
    获取Spring容器中的Bean
    Log4j 配置 的webAppRootKey参数问题
    关于Eclipse项目中加入jquery.js文件报错(missing semicolon)问题
    SSO(单点登录)
    MySQL拷贝表的几种方式
    Maven的简介
    Maven 的41种骨架功能介绍
    Intellij IDEA 快捷键大全
    nginx基本配置与参数说明
    MYSQL和ORACLE的一些区别
  • 原文地址:https://www.cnblogs.com/Ocean-Star/p/9229202.html
Copyright © 2011-2022 走看看