0

簡単なデバイスドライバーを作成しました。モジュールをロードするだけで、デバイスファイルが作成されます。しかし、アプリケーションがデバイスファイルを開こうとすると、エラーが発生します-1 (operation not permitted)。コマンドを実行してデバイスの特性を調べようとすると、次のようになります。

 $udevadm info -a -p /sys/class/char/<devname>

出力を取得します:

KERNEL=="<devname>"
SUBSYSTEM=="char" 
DRIVER==" "

したがって、どうやら私のデバイスノードはデバイスドライバにリンクされていません。

誰かがこれで私を助けてくれますか?

ありがとう

4

1 に答える 1

2

udevが作成したデバイスノードの権限を確認しましたか?

Udevはこれらのデバイスノードの権限を管理します。rootとして実行していない限り、デバイスノードとの間で読み取り/書き込みが許可されていない可能性があります。

編集

ルートとして実行している場合、デバイスノードの権限は要因になりません。/ proc / devicesの内容、の出力、ls -la /dev/my-device-nodeおよびコードを表示してください

于 2012-05-22T08:12:44.073 に答える