【问题标题】:Is number of compiled modules affecting size of linux kernel in RAM?已编译模块的数量是否会影响 RAM 中 Linux 内核的大小?
【发布时间】:2013-08-02 15:23:23
【问题描述】:

当我编译 Linux 内核时,我编译的驱动程序和模块的数量肯定会影响生成的二进制文件的大小。但是它是否也会影响内核加载到内存时的大小?

我的意思是,当我编译我的硬件不需要的驱动程序时,内核会忽略它们,还是它们也加载到 RAM 中?

TL;DR :
我编译了只包含我需要的驱动程序的内核 A;
内核 B 包含我需要的驱动程序 + 我不需要的额外驱动程序。
内核 B 会比内核 A 吃掉更多的内存吗?

【问题讨论】:

  • 是的。如果驱动程序是作为内核映像的一部分构建的。如果它们被构建为内核 ko 模块并且除非需要,否则不会加载。
  • @TheCodeArtist:你能提交这个作为答案吗?一些参考文献也会很好:)

标签: linux-kernel


【解决方案1】:
  1. 作为 Linux 内核映像的一部分构建的任何驱动程序都会在引导期间加载到主内存中,并且无论是否使用都会继续消耗主内存。

  2. 作为独立模块构建的驱动程序,即 .ko 文件可以根据需要单独加载。除非它们被加载,否则它们不会消耗任何主内存。

【讨论】:

    猜你喜欢
    • 2021-08-03
    • 2011-05-03
    • 2011-06-06
    • 2012-02-22
    • 2014-01-25
    • 1970-01-01
    • 2017-10-01
    相关资源
    最近更新 更多