我一直在考虑键盘的操作。它是如何工作的?我似乎无法在谷歌上找到一个好的解释。
我知道每次按键时都会出现键盘中断。处理器暂停正在处理的一切,并从键盘缓冲区加载键盘数据,将其存储在系统级缓冲区中。
但是接下来会发生什么呢?让我们举一个实际的例子。当我运行以下代码时会发生什么:
...
std::string s;
std::cin >> s;
....
cin
是否读取系统级键盘缓冲区的用户级表示?这在我的脑海中非常有意义,因为这样两个或更多的进程就可以从同一个缓冲区读取,这样我就不会松开任何按键。但它是这样工作的吗?
我知道我说的是非常笼统的话。我使用的操作系统是操作系统X。