我试图将Windows和linux的键盘驱动程序作为一个项目,我正在寻找模拟编写键的实际过程(意味着不使用任何诸如Windows消息之类的东西),然后继续等待用于键盘输入,我为此找到了很多教程。 有人知道在Windows和Linux上很热吗? (正在运行intel proc win10 64bit和kali linux amd proc 64bit)
答案 0 :(得分:2)
在Windows和Linux上不能使用相同的驱动程序。您需要制作两个不同的,不相关的程序,并且必须设计不同的程序(因为Windows和Linux具有不同的驱动程序体系结构)。
在带有图形桌面的Linux上,BTW正在运行display server(例如Xorg或Wayland)。该服务器是唯一处理物理键盘的程序。您可能会考虑使用它。
键盘驱动程序的实际概念太宽泛,无法具体说明。在Linux上,您可以修补内核,修补显示服务器,改进window manager,等等。。。在汇编程序中编码这些东西是没有必要的,也没有太大的兴趣。
请注意,在具有图形桌面的Linux上,键盘布局是在显示服务器中处理的,而不是内核代码中的处理(因此内核发送的键事件的键代码接近scancodes,而不是字符; Xorg服务器将具有类似键码的键盘事件发送到例如窗口管理器。阅读有关X Window System protocols and architecture的更多信息,例如EWMH。图形层非常复杂(在Linux和Windows上),有数百万行代码。