Linux kernel 编译模块的数量是否会影响RAM中linux内核的大小?

Linux kernel 编译模块的数量是否会影响RAM中linux内核的大小?,linux-kernel,Linux Kernel,当我编译Linux内核时,我编译的驱动程序和模块的数量肯定会影响生成的二进制文件的大小。但是,当内核加载到内存中时,它是否也会影响内核的大小 我的意思是,当我编译硬件不需要的驱动程序时,内核会忽略它们吗,还是它们也加载到RAM中 TL;博士: 我编译的内核只包含我需要的驱动程序 内核B包含我需要的驱动程序+我不需要的额外驱动程序。 内核B会比内核A占用更多内存吗? 任何作为Linux内核映像一部分构建的驱动程序在引导期间都会加载到主内存中,并且无论是否使用主内存,都会继续消耗主内存 作为单独模块

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

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

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

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

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

    • 在加载并运行Linux内核之后,使用和命令加载内核模块

    • 当使用
      modprobe
      加载Linux内核模块时,它所依赖的任何其他模块都是

    • 加载内核模块时,需要将它们映射到一个连续的虚拟内存块中。这是通过引入一个


  • 对如果驱动程序是作为内核映像的一部分构建的。如果它们是作为内核
    ko
    模块构建的,并且除非需要,否则不会加载,则不会。@codeartist:您可以将此作为答案提交吗?一些参考资料也不错:)