/sys/module 下列出的模块是否都是已加载的模块?

/sys/module 下列出的模块是否都是已加载的模块?

我想知道是否可以使用目录列表/sys/module而不是 lsmod 来获取当前加载的模块的列表。

这只是加载模块的列表吗?或者也许与 结合/sys/module/*/initstate

答案1

每个加载的模块在 中都有一个条目/sys/module。但也有一些内核组件的条目/sys/module未作为模块加载。每个内核组件被构建为模块在 中有一个条目/sys/module,无论它是作为模块编译和加载还是作为主内核映像的一部分编译。

lsmod从 获取已加载模块的列表/proc/modules

我认为只有加载的模块initstate在其/sys/module目录中才有文件,因此您也可以使用它。

1这是加载的内核的每个组件。内核不知道也不关心硬盘上的文件中可能有哪些模块。内核也不关心在内核映像的同时构建了哪些模块;它可能会显示via,/proc/config但它不会将该信息用于任何用途。

相关内容