0

基盤となるOSがなく、x86アーキテクチャで実行され、最新のネットワークインターフェイスコントローラーを駆動する、IOを多用するアプリケーションを作成したいと思います。

Linuxのドライバーのソースコードを見ると、たとえばIntel e1000eギガビットコントローラーを駆動するには、数千行のコードが必要であることがわかります。Linuxのソースコードからそのようなコードを抽出するのはかなり難しいと思います。

おそらくLinuxドライバーをラップすることによって、今日のコンピューター(NICを含む)を駆動する方法を提供するソリューション/プロジェクトを知っていますか?

どうもありがとう

4

2 に答える 2

4

これらすべてを管理するには、ドライバーと(ある種の)OSを作成する必要があります。スケジューリング、メモリ管理、帯域外IO、IPスタック(そのルートを選択した場合)。なぜ車輪の再発明をするのですか?リアルタイムのLinuxディストリビューションを入手するか、vxworksまたはQNXを入手してください。これはIOを多用する要件向けに設計されたものです。

于 2009-11-03T22:55:05.577 に答える
1

UNDIは、ネットワークデバイス用のユニバーサルプログラミングインターフェイスであり、PXEをサポートするすべてのネットワークカードで機能する必要があります(最近では基本的にすべてです)。

UNDIは、実際の(16ビットの保護されていない)モードで実行するように設計されているため、OSがなくても簡単に使用できます。(OSがない場合やDOSのようなダムOSがある場合は、32ビットまたは64ビットのプロテクトモードで実行される最新のOSよりもはるかに簡単です。)

于 2009-11-04T02:36:16.773 に答える