在 1980 年代的计算机杂志(Kilobaud?Creative Computing?)中有一篇文章描述了按键如何发出键代码,它如何通过设备驱动程序,转换为 ASCII 代码,通过事件处理程序发送,等等等等等等,最终以应用程序通过标准输入(或其他等效项)接收的字节(或其他)结束。应用程序对其进行的操作超出了本文的范围。这篇文章很有趣,更多的是展示了当时操作系统和设备驱动程序的复杂性,而不是技术实用性。
现在在 2010 年,我们拥有具有非常大内核、可加载模块、unixey tty 事物和管道以及多处理层的 Linux……是否有一篇类似的文章发表在任何地方,将字符从键盘跟踪到某个应用程序的标准输入,描述了每一步方法?
寻找一些技术性的东西(没有被淡化到流行科学杂志的水平),但可以被内核和低级 IO 工作的非专家理解。
(如果没有这样的文章,请继续写一篇,将其作为答案发布在这里!)