标签: usb-keyboard

PS/2 与 USB 键盘:性能和能耗

据我所知,PS/2 键盘是中断驱动的,而 USB 是轮询的。通常,在 Windows 上为 PS/2 键盘分配了 IRQ_1。

我不是硬件专家,但乍一看似乎 PS/2 键盘更高效。所以这里是我的问题:

  1. 在现代计算机上,PS/2 键盘是否更好(或更快),如果是这样,它是否会很明显?( ..:在游戏中)
  2. 既然不需要轮询,那么PS/2键盘比USB更省电吗?(请注意,我在这里不仅谈论外围设备,还谈论整体计算机能耗)。
  3. 如果 PS/2 比 USB 有任何优势,那么在我的 USB 键盘上添加 PS/2 适配器会使设备与实际的 PS/2 键盘一样好吗?相反,将 USB 适配器添加到 PS/2 会使其与 USB KB 一样糟糕吗?

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 …

usb keyboard irq ps2-keyboard usb-keyboard

9
推荐指数
2
解决办法
1万
查看次数

按键卡住 - 键盘驱动程序中的错误?

我是一名程序员,写得非常快(虽然不是特别快)。在我工作的戴尔笔记本电脑中,我经常遇到两个错误,我怀疑这与一些底层的 Windows 键盘驱动程序有关(“底层”,因为这些错误也发生在完全不同品牌的键盘上)。它不是键盘的物理属性,我试过更换键盘本身。两个USB键盘,顺便说一句。

这些是奇怪的问题:

  • Ctrl当我快速键入时,密钥会挂起 - 但它不会在物理上挂起 - “释放密钥代码”似乎永远不会到达操作系统。这种情况经常发生,比如我在该区域时每 20 到 120 秒发生一次。解决的方法是1)实现控制键被系统认为是按下的,2)按下右键再 Ctrl松开。左键Ctrl不能修复错误(我知道他们发送不同的扫描码)。

  • Shift关键的“挂起”以同样的方式,但也没有办法得到它解锁按下并松开Shift键,似乎有一个内部计数器,它挂起。这种情况可能每 10 到 20 天发生一次。要解决我 1) 必须意识到 Shift键处于按下状态(无法使用Shift按下的键工作 ,简单地在 Explorer.exe 中选择另一个文件变得不可能,更不用说尝试在 Eclipse 中编写代码)并修复我 2) 运行我为 AutoHotkey 编写的脚本,该脚本发送{SHIFT UP}到系统。在我写脚本之前,我不得不重新启动计算机......

我对此感到恼火。是什么原因造成的,我该如何解决这些问题?

编辑:这是我的 AHK 文件:

RShift::LShift

^!+r::
  ; Show a black "splash" to reveal script reloading.
  Run %windir%\system32\cmd.exe /c
  Reload
return

^!+e::
  Edit
return

; Send shift-up.
#^!+s::
  ; Send shift-up to "fix" my office laptop …
Run Code Online (Sandbox Code Playgroud)

windows usb-keyboard

6
推荐指数
1
解决办法
2971
查看次数

标签 统计

usb-keyboard ×2

irq ×1

keyboard ×1

ps2-keyboard ×1

usb ×1

windows ×1