1
ハードウェア割り込みを処理し、ユーザーpthread(または理想的にはC++ 11スレッド)を起動するLinuxカーネルモジュールを開発する必要があります。それは可能ですか?LKMとpthread間の通信方法は?
どうすればいいですか?
ハードウェア割り込みを処理し、ユーザーpthread(または理想的にはC++ 11スレッド)を起動するLinuxカーネルモジュールを開発する必要があります。それは可能ですか?LKMとpthread間の通信方法は?
どうすればいいですか?
はい。可能。
あなたのケースで割り込みが発生すると、LKMはユーザスペースを親密にする必要があります。
ISRでは、FIFO形式のメカニズムを使用してユーザー空間に通知できます。スレッド(例えばpthread)がブロックされているところでは、FIFOがLKMに書き込まれるとFIFOが処理を開始することができます。
あなたの答えをありがとう。どのようにpthreadはFIFO上でブロックされた読み込みをしますか? – DavidA
これは役立つかもしれないhttp://stackoverflow.com/questions/7256237/fifo-doesnt-block-onread – Jeyaram