iwlwifi 或 iwldvm 或 wext 是无线驱动程序吗?

iwlwifi 或 iwldvm 或 wext 是无线驱动程序吗?

https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi

iwlwifi 是英特尔当前无线芯片的无线驱动程序。

https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi#firmware

Device  Kernels     Module  Firmware
Intel® Wireless WiFi 5150AGN    2.6.29+     iwldvm  iwlwifi-5150-ucode-8.24.2.2.tgz

iwldvm就是“模块”。

  1. 驱动程序不是一个模块吗?

  2. 哪个是 wifi 适配器的无线驱动程序(模块),iwlwifi 还是 iwldvm?

  3. wext 也是某种驱动模块吗,但为什么它没有在lsmodor中列出lshw?另请参阅https://unix.stackexchange.com/a/198509/674

谢谢。

答案1

并非每个模块都是驱动程序,驱动程序可以使用多个模块。有关更多信息,请阅读此 U&L 线程

至于您的具体问题:

$ modinfo iwlwifi | grep description
description:    Intel(R) Wireless WiFi driver for Linux
$ modinfo iwldvm | grep description
description:    Intel(R) Wireless WiFi Link AGN driver for Linux
$ modinfo iwldvm | grep depends
depends:        iwlwifi,mac80211,cfg80211

正如你所见,该iwldvm模块属于一个非常具体的英特尔 WiFi 芯片组。它经过优化,可与 WiFi Link AGN 设备完美配合。

然而,它说取决于 iwlwifi相反,它只是简单地声明为“英特尔 WiFi 驱动程序”,因此它是一个通用的驱动程序,它应该可以与许多英特尔 WiFi 设备兼容。

我不知道英特尔驱动程序的具体工作方式,但我可以想象以下内容:

iwlwifi 可实现与 WiFi 设备的基本交互。如果您只有 iwlwifi,您的 WiFi 可以完美运行,但速度会降低,甚至无法运行。

对于后两种情况,这里有一个更具体的模块,例如 iwldvm,它包含更复杂任务所需的操作。有了这个驱动程序,WiFi 应该可以正常工作,但它仍然需要 iwlwifi。

相关内容