/sys/bus/usb/は、すべてのLinuxディストリビューションで同じ構造を持っています。

/sys/bus/usb/は、すべてのLinuxディストリビューションで同じ構造を持っています。

WindowsからLinuxにMonoアプリケーションを移植しています。アプリケーションは外部ボードと通信します。ボードは3つの仮想シリアルポートとして表示されます。誰もが別の役割を果たします。

アプリケーションはこれらのポートを自動的に検出します。 ieで構造と情報を渡すことはできますか/sys/bus/usb/?他のLinuxディストリビューションでも同じですか?

答え1

はい、ディストリビューション全体で同じ構造を使用できます/sys/bus/usb/。なぜなら、カーネルだけに依存して十分に成熟し、今後のカーネルバージョンで変更される可能性が低いからです(しかし誰が知っていますか…)。

しかし、これは問題を解決する誤った方法です。正しいアプローチは、udevアプリケーションにカスタムルールを含め、udevインストール中にこのルールが正しい場所にコピーされていることを確認することです(通常、デプロイメント/etc/udev/rules.dによって異なる場合があります。疑わしい場合は、ユーザーが設定するようにしてください)。ルールは、udevボードを一意に識別するすべての情報(ベンダー/デバイスIDなど)を使用して、/dev/disks3つのシリアルデバイスにシンボリックリンク(に示されているものと同様)を割り当てることができます。アプリケーションはシンボリックリンクを使用する必要があります。

ピンチでは、Ryle用に計画されたUSBツリー構造を使用することもできます。udevadm info --attribute-walk ...デバイスのプロパティのリストについては、リソースを参照してください。

関連情報