キーボードで追加キーを押すとどうなりますか?

キーボードで追加キーを押すとどうなりますか?

追加のキーを持つキーボードがどのように機能するかを見たいです。たとえば、次のキーボードがあるとします。

ここに画像の説明を入力してください。

追加のキーがあることがわかります。今私が押したとします。静かな決定的に、この状態では何が起こるか。

私の考えにこんなことが起きていると思います。

  • 信号がコンピュータに送信されます。
  • キーボードデバイスドライバはこの信号を受け取ります。
  • キーボードデバイスドライバは信号がミュート信号であることを確認するので、それをオペレーティングシステムに渡すのではなく、オペレーティングシステムの機能/システムコールを呼び出してコンピュータのサウンドをミュートします。

私は正しいですか?

ベストアンサー1

入力レイヤーの非常に簡単な概要:

キーボードデバイスはUSBまたはPS / 2ポートなどを介してPCに接続されます。このメカニズムのカーネルドライバは、キーボードのキーを押すと通信を処理する方法を知っています。

USBキーボードには次の標準があります。高圧ガス放電管(ヒューマンインターフェースデバイス)が存在します。これはキーボードだけでなく、マウス、ジョイスティック、その他の入力デバイスにも当てはまります。したがって、記述子カーネルがエクスポートできる信号と、次のようなさまざまなキーストロークのコードを教えてくれます。静かな標準化されています。

ただし、一部のキーボードのキーは標準化されておらず(たとえば、Fn一部のキーボードのキー)、そのキーに信号を送信する方法は製造元によって異なります。

カーネルにはHIDデバイスを処理するための特別な層があります。この層は生のHID通信を可能にし、/dev/hidrawXHIDイベントをカーネル入力イベントに変換します。

カーネル入力層は以下を使用します。スキャンコード(デバイス固有の物理キーに対応する数値)を次のように変換します。キーコード(すべてのデバイスにわたって標準化された論理キーに対応する数値)両方がイベントとして提供されます/dev/input/eventX。変換テーブルを表示するには、などをevdev使用してこれらのイベントを表示できます。showkeydumpkeys

Xサーバー(またはWayland)はこれらすべてのイベントを読み取り、主なシンボル(例:、等aまたはá特殊、例AudioMute:)。 Xアプリケーションはこのシンボルを受け取り、それに応じて動作できます。アプリケーションビューを使用してこのレイヤーを表示しますxevxmodmapxkbdxorg.conf

対応するにはAudioMuteいくつかのアプリケーションが必要です。通常、これはウィンドウマネージャですが、ウィンドウマネージャがこれを行わない場合は、別のアプリケーションも機能します。

したがって、単一の「キーボードドライバ」はなく、はるかに複雑で、特に「自動」は必要ありません。

おすすめ記事