質問: 確認のために質問させていただきます。 キーを押されてから、アプリケーションがそれを認識するまでの流れは、以下で間違いないでしょうか。 1. 入力されたキーがメモリに書き込まれる(このとき、CPUもPICも一切介入しない) 2. メモリへの書き込みが終わったことをPICに通知する 3. PICがCPUに、キーボードからの割り込みがあったことを通知する 4. 割り込みハンドラが呼ばれる 5. IN命令を実行して、入力されたキーをメモリから読み取り、共有メモリにコピーする 6. 各アプリケーションが登録したキー押下時のイベントに関連付けられたイベントハンドラが呼ばれる 上記手順で間違いないでしょうか。上記手順で幾つかの疑問がございます。 ・入力されたキーがメモリに書き込まれる際に、CPUもPICも一切介入しないのはおかしい ・IN命令は、メモリ上のデータをCPUのレジスタにコピーする命令という認識であっているか ハードウェアに近い部分であるため、アプリケーションの開発しか行っていない私にはうまくイメージできないため、質問させていただきました。 それでは、よろしくお願いいたします。
回答: 検索して調べました。こちらがわかりやすいと思います。 感覚的に理解しやすいです。 http://pc-pier.com/blog/2016/02/05/keyboard/ それから、すべての処理は、CPUを介在すると思います。