1

私はこれにすべて間違ってアプローチしているかもしれませんが...

外部割り込みを処理し、現在、発生時にprintk()を実行するLinuxカーネルデバイスドライバーがあります。

私がやりたいのは、このイベントが発生したことをユーザースペースアプリに伝えて、ウェイクアップして何かを実行できるようにすることです。

カーネル内からSIGUSR1を設定し、それをユーザースペースからキャプチャすることは可能ですか(/ simple / goodpractice)

signal (SIGUSR1, <handler function>);

ありがとう

4

1 に答える 1

3

これはあまり良い考えとは言えません。可能であれば、何らかの方法でドライバーにユーザー空間の担当者のプロセス ID を提供して、ドライバーが信号を取得できるようにする必要があります。

/dev/xxx を作成して開くと、イベントが発生したときにドライバーがファイル記述子をアクティブにすることができます。より多くの情報を提供するかもしれません。

于 2010-01-07T13:04:03.773 に答える