[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 怎样确认 一个 内核模块 是否正在使用?



Stanley Peng wrote:

肖盛文 (Faris Xiao) 提到:


sarge kernel 2.6.8-2-686

在我机器启动的时候,自动加载了很多模块。

根据 lsmod 命令的输出,如果看到 Used by 的数字不为 “0” ,则可以判断该 模 块在使用。
但 Used by 的数字显示为 “0” 的情况下,无法判断该模块是否在使用。

请问大家还有什么其它方法可以判断某个模块是否在使用?

只要被加载进来了,如果显示的数字为0,只表示目前没有其他模块使用到该模 块,并不表示该模块没有被使用,
也可能表示该模块是独立工作。

某个模块一旦被加载,说明内核正在使用该模块提供的功能,如果你把它卸载 掉, 那么该模块提供的功能就不能被上层应用使用。

只要某个模块被加载,就说明内核正在使用该模块提供的功能?不一定吧?

比如说,我lsmod里面有个叫 ohci_hcd 的模块,说明该模块被加载,但是 Used by 的数字显示为 “0”, 无论我是否 rmmod ohci_hcd 或者 modprobe ohci_hcd,我的计算机均能够正常使 用,因为我的USB硬件不是那种类型的。

当 ohci_hcd 在 lsmod 里面出现的时候,能够说明“内核正在使用 ohci_hcd 提供 的功能”吗?



大家有没有什么好的办法,判断出 使用计数为零(Used by 的数字为 “0”) 的 模块,是否被内核使用?

如果一个一个的使用 rmmod 去试的话,那就太费力了。




所以,是否要加载一个模块,就要看你想让内核提供哪些功能,根据你的需求自 己 可以定制想加载哪些模块,不想加载那些模块。




--

肖盛文(Faris Xiao)
Email:atzlinux@163.com




Reply to: