据我所知,PS/2 键盘是中断驱动的,而 USB 是轮询的。通常,在 Windows 上为 PS/2 键盘分配了 IRQ_1。
我不是硬件专家,但乍一看似乎 PS/2 键盘更高效。所以这里是我的问题:
USB 需要主动轮询。因此,CPU 必须将其某些周期专用于扫描按键,这意味着可用于其他任务的周期数较少。这会导致 CPU 频率上升,因此功耗会更高。一个有趣的案例:假设我们将两台相同的计算机并排放置,一台使用 PS/2 键盘,另一台使用相同型号的 USB 键盘,我们将它们打开一整天。如果我们白天只按一个键,PS/2 键盘所需的 CPU 时间比 USB 键盘低得多。因此,在具有极端动态频率缩放的 CPU 中,USB 键盘总体上需要更多功率。另外,USB协议需要管理多个设备,
这些是我在 #2 中提出的考虑因素,考虑到整个 PC,而不仅仅是键盘从 5 V 输入中吸收了多少。
看来轮询的东西只能到USB 2.0,根据维基百科,USB 3.0摆脱了轮询:
提高总线利用率 - 添加了一项新功能(使用数据包 NRDY 和 ERDY),让设备异步通知主机其准备就绪(无需轮询)
(到目前为止,USB 3.0 键盘很少见。我只知道今年在COMPUTEX 上展示的技嘉键盘,我怀疑它使用 USB 3.0 …