什么是硬件驱动程序,为什么它们会导致这么多问题?

如果你的电脑突然崩溃,很可能是硬件驱动程序出了问题。 驱动程序是计算机操作系统与硬件进行沟通的桥梁,无论是 Windows 还是 Android,所有操作系统都依赖硬件驱动程序来实现正常运作。

驱动程序:计算机的“翻译官”

计算机主要由两大组成部分构成:软件和硬件。 软件包括操作系统以及你安装的所有程序和应用程序;而硬件则是主板、内存、鼠标、键盘、打印机等一切与计算机相连的物理设备。

软件和硬件需要驱动程序才能有效“对话”。 驱动程序是一种特殊的软件,它告诉操作系统、程序和应用程序如何使用硬件设备。 我们可以把操作系统想象成说英语的人,而硬件说的是德语,那么驱动程序就相当于一个翻译,负责将英语翻译成德语,反之亦然。

驱动程序的“幕后英雄”

一般来说,生产硬件的厂商会负责制作相应的驱动程序。 比如,你的显卡驱动程序通常由显卡制造商提供。 但有时候,情况并非如此。

微软(以及一些其他厂商)会提供一些通用的驱动程序,这些驱动程序可以被各种设备使用。 这样可以节省成本并保持性能的一致性。 使用通用驱动程序,可以让硬件厂商专注于制造硬件,而无需耗费大量时间来开发驱动程序。 比如,你的鼠标、键盘和USB驱动器可能就使用了微软提供的通用驱动程序。

尽管通用驱动程序适用于大多数设备,但某些设备使用专用的驱动程序可能会表现更好。 比如,你的计算机显卡可以使用通用驱动程序来在显示器上显示桌面,但如果要获得最佳的3D游戏性能,则需要安装来自NVIDIA、AMD或Intel等显卡制造商提供的驱动程序。

无论是谁开发了驱动程序,软件开发人员都会使用它们。 比如,你的文本编辑器或文字处理软件会调用打印机驱动程序来操作打印机,并调用显卡驱动程序来显示文本。 如果没有这些驱动程序,你的程序就无法与打印机或显示器通信,从而无法完成打印或调整字体大小等基本功能。 驱动程序的存在让软件开发人员无需深入了解硬件的细节,就能使用硬件的功能。

软件开发人员无需重复造轮子。 如果一个应用程序需要打印功能,开发者只需实现一个基本的打印功能,然后交给系统的打印机驱动程序来处理具体的细节。 否则,软件开发人员可能需要为HP、Brother等各种品牌的打印机都单独设计打印操作。

有时,软件需要使用多个驱动程序才能与设备正常工作,数据会在这些驱动程序之间传递。 还是以语言翻译为例,假设你的软件说英语,硬件说德语。 第一个翻译只会说英语和意大利语,但这已经可以促进沟通。 现在来了第二个翻译,他会说意大利语和德语。 通过两个翻译的接力,最终,信息得以顺利传递。 这与软件和硬件之间使用多个驱动程序时的基本原理相同。

硬件驱动程序为何会导致系统崩溃?

软件、驱动程序和硬件之间的紧密协作是计算机正常运行的关键,但也正是这种紧密协作,可能会导致问题。 我们再次回到语言翻译的例子。 翻译的水平取决于链条中最薄弱的一环。 如果你的翻译英语说得很好,但德语马马虎虎,他可能就会说错话,导致说德语的人无法理解他的意思。

硬件驱动程序也会出现类似的问题,而且情况更加复杂。 不仅仅是驱动程序本身可能存在问题,相关的软件和硬件也可能存在缺陷。 当这些问题沿着链条传递时,它们会被放大,就像传话游戏一样。 比如,如果你告诉软件你要打印,而软件错误地将方向发送给了驱动程序,那么驱动程序也会尽可能地解释这个错误的方向,并将其发送给硬件。 如果一切顺利,你可能不会注意到任何异常。

然而,软件、驱动程序和硬件并非总是足够智能,能够从错误的数据中恢复。 如果你的翻译不知道为什么说德语的人想要“手鞋”,你可以一起确定他们想表达的是手套。 但是,如果你的操作系统告诉显卡驱动程序在你想要打开风扇时却关闭风扇,显卡就会按照错误的指示运行,导致系统过热甚至关机。

问题远比这个复杂,但从根本上来说,问题可以归结为这样一个事实:错误的数据提出了一个不可能的请求,系统无法从这个错误中恢复,最终导致操作系统冻结或崩溃。 驱动程序本身可能包含错误或不兼容性,硬件设备故障或者其他物理问题也可能导致驱动程序失效。

当怀疑硬件驱动程序有问题时该怎么办?

更新硬件驱动程序是首要之选。

如果你怀疑你的计算机存在硬件驱动程序问题,首先要做的是冷静下来,仔细思考你得出这个结论的原因。 如果某个软件建议你更新“过时”的软件,并承诺帮你更新驱动程序,你应该马上停止。 我们不推荐使用驱动程序更新工具,它们可能弊大于利,甚至可以说几乎没有任何好处。 你能为电脑做的最好的事情就是卸载这些驱动程序更新工具。

事实上,你通常不需要更新硬件驱动程序。 如果你没有遇到硬件问题,一切运行正常,那么最好保持原样,不要冒险引入新的问题。 一个例外是显卡驱动程序。 显卡驱动程序会定期更新,以解决问题、添加新功能并提高新PC游戏的性能。 但对于大多数硬件驱动程序来说,你可能不需要进行更新。

但是,如果你看到蓝屏死机 (BSOD),并显示有关硬件驱动程序的错误消息,那么你可能找到了问题的关键。 如果硬件驱动程序导致崩溃,那么下一步应该是检查是否有新的驱动程序可用。

即使在这种情况下,也不要使用驱动程序更新工具。 更新驱动程序的最佳方法是通过 Windows Update 或制造商的网站。 首先检查是否有 Windows 更新,微软在处理硬件更新方面做得不错,这可以帮你节省很多时间和精力。

如果在 Windows 更新中没有找到任何更新,请前往硬件制造商的网站,在其支持区域查找驱动程序下载。 将制造商提供的最新版本与设备管理器中显示的版本进行比较。

在大多数情况下,硬件驱动程序应该在后台默默运行,你甚至不会注意到它们的存在。 不幸的是,让硬件驱动程序正常运行的一切也使它们成为了潜在的问题来源。 但通常情况下,你根本不需要担心它们。 它们要么不需要更新,要么 Windows 会帮你处理。 如果你遇到问题,了解这些关键事实将帮助你解决问题,并避免一开始就不存在的问题。