Linux 相当于 Windows 设备管理器/DevCon 实用程序?

8 linux device-manager linux-device-driver

我想知道是否有任何 Linux 等效于 Windows 设备管理器或 WindowsDevCon实用程序(具有硬件管理功能的命令行实用程序)。

驱动程序在 Linux 中的工作方式是否相同?

Law*_*ceC 6

devconLinux 中的各种工具和命令涵盖了 Windows 提供的功能。

Linux 的“即插即用”管理器通常是udev. udev负责识别硬件更改,(可能)自动加载模块,并在/dev需要时创建节点。如果你想做一些事情,比如在 Linux 下模拟 USB 设备移除(devcon可以做的事情)udevd,我相信应该使用与运行交互的命令。我还没有在 Linux 下做过这件事,但你可以从了解更多关于udev.

lsmod将显示所有当前加载的内核模块。设备驱动程序是内核模块的一项功能。 insmod如果可能,将加载并启动一个模块,并且大多数情况下会导致设备出现在/dev. rmmod反之。如果您执行 anlsmod您会注意到某些模块依赖于其他rmmod模块,如果某些模块依赖于它,则不会让您删除它。 modprobe其选项处理依赖项。

在 Linux 下,模块也可以“内置”到内核中,它们不会出现在任何模块列表中。它们在引导加载程序加载内核时立即且始终可用。另一种选择是将模块放置在“初始 ramdisk” ( initrd)内的目录中,该目录也由引导加载程序加载并在引导时立即可供内核访问。“安装”或“更新”设备驱动程序可能涉及使用内置模块创建新的或更新的内核,或者在 initrd 中添加/更新它(如果它不存在)。大多数发行版都提供了执行此操作的工具和实用程序。

您通常不必担心安装或获取第三方驱动程序,除非它不包含在来自 kernel.org 的“官方”内核中 - 因为内核模块(包括驱动程序)是内核的一部分,每个受支持设备的驱动程序也包括在内,通常随您的发行版一起提供。因此,需要在 Linux 下安装“制造商提供的驱动程序”并不是很常见,除非视频驱动程序和一些无线芯片组可能在驱动程序开发人员所需的技术信息方面仍然有很多法律负担。

lshw可以以树状格式为您提供大部分此类信息。 lspci, lsusb, lsscsi, 和lscpu也非常有帮助。大多数总线,例如 PCI、SCSI、USB,在大多数 Linux 发行版中都有许多用户态实用程序可用,您可以使用它们来配置和获取特定设备类别的信息(例如:)hdparm。而在这一段几乎所有提到的,更多的,只是前端在各种文件和目录/proc/sys; 尽管在大多数情况下您会想要使用这些实用程序。


txw*_*ger 2

Linux 中的大多数设备驱动程序都是内核扩展。您可以使用“lsmod”列出它们,使用“rmmod”删除它们或使用“modprobe”加载它们。