システムサービスからユーザーサービスへの情報フロー

システムサービスからユーザーサービスへの情報フロー

ユーザー レベルのシステムが、タッチスクリーンが使用されているときとタッチパッドが使用されているときを認識できるように (マウスの生データにアクセスせずに)、いくつかの /dev/input ファイルを抽象化しようとしています。

これを実現するために、/dev/input ファイルの変更を監視し、非ルート セッション サービスが取得できる「現在タッチパッドを使用しています」または「現在タッチスクリーンを使用しています」というメッセージを公開するルート システム サービスを作成します (たとえば、/etc/systemd/user/ の下のサービスが情報を活用できるようにするため)。

私が考えた潜在的な方法:

  1. ルートサービスにファイルを管理させ、非ルートサービスが更新を監視できるようにする
  2. dbus のような何らかのバスを介して公開します (dbus を使用したことはありませんが、システム バスとセッション バスは分離されているようです)

ここで推奨されるパターンにはどのようなものがありますか? Linux でのプロセス間通信についてはほとんど作業したことがありませんが、このようなことを実行するクリーンな方法があるはずだと考えています。

編集: 1 対 1 のように見える名前付きパイプとは異なり、特に 1 対多のフローを探しています。

関連情報