2つのCアプリケーション間でデバイスを共有する必要があります。デバイスはブザーです。 O_NONBLOCKフラグでオンにしようとしましたが、結果は同じです。デバイスまたはリソースが使用中です。
このデバイスは2つの用途に使用できますか?
事前にありがとう
答え1
正確なデバイスがわからない場合でも、カーネルがそのデバイスへの同時アクセスを無効にするのに十分な理由があると思います。いずれにしても、2つのプログラムの準同時アクセスを許可するには、プログラムとデバイスの間に3番目のプログラムを導入できます。プログラムは、/dev/gpio
UNIXドメインソケット(socket(2)
)または名前付きパイプ()を介して開くことができ、mkfifo(3)
実際のプログラムからのコマンドを受け入れることができます。