为什么 Linux 发行版可以立即识别 USB 设备,而 Windows 却需要 1 多分钟才能识别?

为什么 Linux 发行版可以立即识别 USB 设备,而 Windows 却需要 1 多分钟才能识别?

我有许多 USB 驱动器和适配器。我经常需要在各种地方使用它们(图书馆、家里、某人的笔记本电脑等)。Windows(7、8、10)似乎总是需要 1 分钟以上的时间才能识别我之前未插入的任何 USB 驱动器。在 Linux(Ubuntu、Debian、RedHat、Slackware)计算机上,它可以立即识别设备。我所说的识别是指检测设备并安装驱动程序。

设备(我记得的最新设备):

  • TP-Link WN725N 迷你 wifi 适配器
  • 金士顿 DTSE9H USB 闪存盘
  • 金士顿 DT 101 G2 USB 闪存盘
  • Lexar JumpDrive TwistTurn 闪存盘
  • Linksys 无线 N USB 适配器(AE1200-CA)
  • 三星条形 32GB 130MB/s USB 3.0 闪存盘
  • 罗技 Touch Plus 无线键盘(K400)
  • 罗技无线键盘和鼠标组合 - 黑色(MK270)

还有更多我不记得了。

这是有什么原因吗?如果是的话,我该如何加快 Windows 上的设备识别速度?

答案1

我认为当前的答案不能恰当地捕捉到差异。Windows 也提供了大多数驱动程序(如 USB 大容量存储或 HID)。当然,它们位于单独的文件中。这与大多数通用 Linux 内核版本非常相似,它们的驱动程序位于单独的模块中。

但是,Windows 将为每个设备创建一个单独的设备实例,该实例由其连接的位置(非常重要)和设备本身标识。这个过程需要花费所有时间。注册设备实例后,添加和删除的速度与 Linux 一样快。

总结:在 Windows 上,将设备与驱动程序关联的初始过程很慢。对此你无能为力。

答案2

主要原因是 Linux 不会扫描您的 U 盘或任何其他设备以查找驱动程序。Linux 内核默认包含所有驱动程序,并且仅检查设备的型号和制造商。此外,许多驱动程序由发行商添加为内核模块。它们几乎涵盖了我们日常使用的设备。

Linux 内核源代码在 drivers 文件夹中包含许多驱动程序(以源代码的形式)。- Linux.org

但是 Windows 会扫描任何新插入的设备以查找驱动程序软件。如果找到驱动程序软件,它将安装该驱动程序软件。您可能会看到如下所示的安装驱动程序提示。

驱动程序安装

如何加快 Windows 上的设备识别速度?

不能。如果不安装驱动程序,Windows 无法使用该设备。当设备连接到第一次即使手动安装了驱动程序。这是因为 Windows 会扫描设备以查找驱动程序的更新版本。

参考

  1. Linux 内核驱动程序 - Linux.org

答案3

另一个答案充分解释了为什么,但没有说明如何处理。简单的答案是,每当您获得新的 USB 设备时,请在您不着急时将其连接到机器,以便 Windows 可以进行所有检查并安装所需的驱动程序。然后,当您着急时,驱动程序已经在那里了,所以您不必等待——除非 Windows 决定烦人并尝试检查设备驱动程序的更新。

相关内容