問題タブ [device-node]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - デバイスを開けませんでした
/dev/simulator ファイルに書き込もうとしています。以下を使用してこのデバイスを作成しました。
- # mknod /dev/simulator c 60 0
- # chmod 666 /dev/simulator
- # ls -l /dev/simulator
- crw-rw-rw- 1 ルート ルート 60, 0 2012-05-22 19:22 /dev/simulator
このデバイスを開いて何かを書き込もうとしていますが、エラーが発生します:
アプリケーション: シミュレーターを開くことができませんでした
これは状態で定義されていますが、デバイスにアクセスできないのはなぜですか? これが私のコードです:
誰でも私の間違いを修正するのを手伝ってもらえますか?
linux - read()/select() エラーと可能な回復
私の組み込みシステムは Linux OS を実行しています。システムには、USB 経由で接続された 2 つのジョイスティックがあります。私のプログラムは、準備ができたらこれら 2 つのデバイスのいずれかを読み取り、ジョイスティックのキー情報を上位層に渡す必要があります。
私のプログラムは次のことを行います。
- ジョイスティック ファイル/dev/js0と/dev/js1がまだ開いていない場合は、両方を開きます。
つまり、fd0 または fd1 == -1 (デフォルト値は -1) の場合、それを開きます。 - select() // maxfd+1 と readset が select に渡されます
- どのデバイスの準備ができていても、プログラムはread()を使用してデータを読み取ります。
- 上記の 3 つの手順はすべて、タイマーで定期的に実行されます。
上記のコードは正常に動作します。問題ない。
否定的なテスト ケースの一部として、USB を開いて正常に読み取った後、ジョイスティックの 1 つを USB から取り外しました。次の perror が表示されるようになりました -> "read() failed: no such file or device.
このエラーを処理して、ジョイスティックを取り外して挿入し直した場合、コードが問題なく再度開くようにしたいと考えています。
上記のエラーが発生するとすぐに、デバイスを閉じて fd を -1 に設定して、ステップ 1 の一部としてデバイスが再度開かれるようにしました。しかし、これは機能していません。現在デバッグ中です。そのようなファイルまたはデバイスエラーが発生した後、close()が機能していないと思います。
この種の問題に遭遇したことがある場合、またはこの種のシナリオ (USB デバイスを開いた後に取り外して挿入した) の処理方法を知っている場合は、親切に情報を提供してください。
どうもありがとう。よろしく、エマーソン
c++ - 方法: ファイル記述子を指定して、ファイルを含むデバイスのデバイス ノードを取得する
そのような単純な。開いているファイルのファイル記述子があり、それを含むデバイスのノード名を知りたいです。
linux - デバイス ノードを物理ディスクに手動で関連付ける
私は Linux アーキテクチャを初めて使用します。可能であれば、sdb や sda などのデバイス ファイルを作成し、udev がない場合に物理ディスクに関連付ける方法を知りたいと思っていました。VBOX でハードディスクを作成しましたが、最小限の機能しか持たず、udev を持たない Linux システムをゼロから構築しています。最小限の Linux でデバイス ファイルを作成し、VBOX ハードディスクをデバイス ファイルに関連付けることは可能ですか。
linux-device-driver - Linux - デバイス ノード名が「?」で終わる これは何を意味するのでしょうか?
カーネルによって正しく初期化される Zigbee RF4CE 用のデバイス ドライバーがあります。ただし、ユーザー空間アプリケーションがデバイスを開こうとすると、次のエラーが表示されます: エラー: デバイスを開くことができませんでした: そのようなファイルまたはディレクトリはありません
/dev フォルダーで ls を実行すると、デバイス名が疑問符「?」で終わることが示されます。
ノードを作成するために使用しているスクリプト ファイルのデバイス名に特殊文字が明示的に追加されていない場合に、なぜそうなるのか知りたいです。
スクリプトの一部を次に示します。
この問題を解決するにはどうすればよいですか?
android - デバイス ノードと uuid をマップする方法
私は Android OS (Linux ベース) で USB フレームワークの開発者として働いています。
現在プロジェクトでは、USB ストレージが接続されているときに UUID とデバイス名をマップする必要があります。調査を続けましたが、適切な解決策が見つかりませんでした。
デバイスノード = "/dev/bus/usb/001/002" UUID = "/storage/ A2FA-9675(UUID)
AndroidまたはカーネルレイヤーでUUIDとデバイス名(デバイスノード)をマップする方法を知っている場合は、助けてください