PCIドライバなしのリバースエンジニアリングデバイス

PCIドライバなしのリバースエンジニアリングデバイス

PCIドライバを持たないデバイスをリバースエンジニアリングできますか?

問題のデバイスは、メインフレームESCONチャネルを専用のUNIXコンピュータに接続できるPCI ESCONカードです。私が知っている限り、このデバイス用に公にリリースされたドライバはありませんでしたが、まだ標準のPCIバスを使用しています。

既存のリバースエンジニアリングセットなしでドライバを1つにまとめることは可能ですか?

どんな情報でも大変感謝いたします。

答え1

これはすべて機器の複雑さによって異なりますが、機器が非常に単純であっても、必要な作業の性質を過小評価しています。

実際の生活では、デバイスの設計とプログラミングについて公開されているPCIインターフェイスから単に推論できないいくつかのことがあります。つまり、デバイスはすべての意図と目的のためのブラックボックスです。さらに、このような問題には多くのリソースと時間が必要であり、必要な努力は非常に非対称的な場合が多いです(つまり、解決するには数百万(時間、お金、人)が必要です)。

簡単な例はNVIDIAハードウェアですが、利用可能な文書はありません。 Nvidiaのヌーボードライバーについて学び、何千人もの助けを借りてどのようにリバースエンジニアリングされ、何十年も経ってもまだアルファ/ベータレベルではほとんど機能しないと考えられています。

Linuxグラフィックスタックは、まともなgfxハードウェア(特にモバイルデバイス)とカーネルの開発に従うことができない恐ろしいメーカードライバについての物語でいっぱいです。メーカーは、一部の「ビジネス」理由(チップ設計ライセンス/特許、ドライバサブコンポーネントライセンス/特許、純粋な貪欲)のために、ドライバを完全にサポートできない状態でドライバをリリースできません。このハードウェアは存在しますが、しばしば役に立ちません。

最大1〜2年間のモバイルチップセット市場の売上高はどのくらいですか?会社は2年が過ぎると、それに対する関心を止めました。チップで得たほとんどのお金はすでに稼いでおり、現在の「消費者」は、古いソフトウェアを実行している不都合な製品を販売する安い中国のメーカーよりも遅れているという事実も関係ありません。

したがって、実際の答えはそうです。不可能なことはありません。実際の質問は、この努力を遂行するための資金、才能、最も重要な時間をどこで見つけることができるかということです。

最善の方法は、特定の問題をすでに解決しようとしたコミュニティや人材を見つけて(たとえば、Linux上で同様のesconデバイスを操作するなど)、他のケースを調査するように説得することです。

リバースエンジニアリングより製造元からハードウェアレジスタレベルのドキュメントを入手し、そのドキュメントに基づいてドライバを開発するカーネルドライバ開発者を見つける方が効率的です。しかし、リバーシングは「ただ」情報収集に過ぎないことを覚えておいてください。完全なドキュメントがあっても、新しいドライバを作成して動作させ、パフォーマンスをまったく異なるレベルに引き上げる必要があります。

通常、製造元にはオペレーティングシステムの特定のバージョンのドライバがあるため、ドライバを要求してから、「中間」が製品とインタフェースする古いオペレーティングシステムを実行しているホストをロックし、いくつかの冒険的で進歩的な小型ドライブを許可することができます。開発者は、さまざまなソフトウェアAPIを介して現代のシステムの世界に接続するソフトウェア「インタラクティブコネクタ」を作成します。

私はこの方法が最も効果的だと思います。

関連情報