“内核模块”和“GNU C 库”是否相同?

“内核模块”和“GNU C 库”是否相同?

我是 Linux 新手,我正在尝试了解 Linux 操作系统结构的基础知识。

那么:“lsmod”和“GNU C Library”(大约 2000 个子例程)的输出中列出的“linux-kernel-modules”是否是同一件事?

答案1

不,Linux 内核模块和 GNU C 库不一样,我不知道你从哪里得到这个想法。

内核模块是 Linux 内核的一部分,可以按需加载。根据配置的不同,可能有数千个模块,典型的安装只会使用几百个,但这取决于硬件和其他因素,使用哪些模块。

另一方面,GNU C 库是用户程序的 C 函数的集合,不在内核中使用。

答案2

你混淆了两种截然不同的东西......

  • Linux 内核模块是外行人怎么称呼驱动程序。它们允许您使用显卡、网卡、声卡等。您可以禁用不使用的驱动程序;但如果您没有必要的驱动程序,您的系统将无法启动。

    内核模块可以作为带有.ko扩展名的文件找到,位于/lib/modules计算机目录内的某个位置。

  • GNU C 库是某知名品牌系统库(系统 DLL,如果您坚持的话)。它充当用户程序(即用 C 编写的 Unix 程序)与跑步在Linux内核上。如果您没有系统库,您的程序将必须用汇编语言编写才能运行。

    GNU C 库的主要元素可以作为名为 的 DLL 找到libc-*.so,位于/lib/*-linux-gnu/计算机上目录中的某个位置。

注意:这个答案实际上是对问题的过度简化。

相关内容