web-dev-qa-db-ja.com

デバイスが割り込みを発生したことをプログラムで検出するにはどうすればよいですか?

デバイスが割り込みを発生したことをプログラムで検出するにはどうすればよいですか?これは、デバイスが接続または切断されている場合に発生する可能性があります。

また、この場合:たとえば、指紋スキャナーに指をかざすと、割り込みが発生します。この割り込みを検出し、場合によってはトラップする方法は?

CDの挿入やペンドライブの接続などのイベントが発生したときに、これらのデバイスが発生する割り込みをキャッチし、それを使用してアプリケーションでこれらのデバイスを含む何かを実行するように、Gtkmmを使用してアプリケーションを作成したいと思います。

Gtkmmで実行できない場合、割り込みをより低いレベルでトラップしてGtkmmアプリケーションに通知できますか?

GPartedの動作をチェックしていました。最初は/dev/sdaが表示されていましたが、ペンドライブを接続すると、自動的にfilesアプリケーションが開きました。 GPartedをチェックしたところ、デバイスのドロップダウンメニューにペンドライブが表示されませんでした。 GPartedメニューで「RefreshDevices」を選択した場合、または Ctrl+R

4
user2555595

goldilocksによる回答を承認します。ただし、システムコールreadを使用してファイルシステムの変更を確認する代わりに、inotifyを使用できます。

そのマニュアルページは ここここ です。

inotifyhere の作成者(開発者)による優れた説明と例があります。

0
user2555595