如何将键盘输入输入内核?

How to get Keyboard inputs into a kernel?

我正在用 c 编写自己的内核。现在我想编写一个控制台来与内核交互。它应该像 Linux 上的普通终端一样工作。如何通过键盘获得输入?我必须使用特定于键盘的驱动程序吗?

您需要在内核中为键盘编写驱动程序。假设是一台标准 PC,8042 键盘控制器有很好的文档记录(参见 http://wiki.osdev.org/%228042%22_PS/2_Controller for example). You'll also need to write a driver for the display, and again assuming VGA it is pretty well documented (see http://wiki.osdev.org/VGA_Hardware)。然后你必须编写所有位于两者之间的终端内容来连接两者。

上面的答案很有帮助,但这里有一个 link 可能会帮助您获得键盘和鼠标输入:

https://wiki.osdev.org/PS2_Keyboard(来自同一页面,但包含该主题的更一般方面。)