2016-06-30 2 views
1

ハードウェア割り込みを処理し、ユーザーpthread(または理想的にはC++ 11スレッド)を起動するLinuxカーネルモジュールを開発する必要があります。それは可能ですか?LKMとpthread間の通信方法は?

どうすればいいですか?

答えて

1

はい。可能。

あなたのケースで割り込みが発生すると、LKMはユーザスペースを親密にする必要があります。

ISRでは、FIFO形式のメカニズムを使用してユーザー空間に通知できます。スレッド(例えばpthread)がブロックされているところでは、FIFOがLKMに書き込まれるとFIFOが処理を開始することができます。

+0

あなたの答えをありがとう。どのようにpthreadはFIFO上でブロックされた読み込みをしますか? – DavidA

+0

これは役立つかもしれないhttp://stackoverflow.com/questions/7256237/fifo-doesnt-block-onread – Jeyaram

関連する問題