2

私はアンドロイドが初めてで、エミュレーターで遊んでみたいと思っています。

私がやりたいことは、OpenGL コマンドを収集して OpenGL グラフィックスを生成できる独自の仮想ハードウェアを作成することです。これを行うには、ハードウェアとの通信を可能にする Linux カーネル ドライバーを作成する必要があると言われました。さらに、カーネル ドライバーを呼び出すには、Android ユーザー空間ライブラリを作成する必要があります。

まず、1 つまたは 2 つのコマンドしか実行しない非常に単純なハードウェアを作成する予定です。

ここで誰かがこのようなことをしましたか?もしそうなら、ヒントや追加情報への可能なリンクはありますか? フィードバックをいただければ幸いです。

4

2 に答える 2

1

ハードウェア エミュレーションの作成はトリッキーな作業であり、決して簡単ではありません。あなたが本当にこれをやりたいのなら、私はゼロから始めません。あなたの場合、最初にいくつかの簡単なことから始めます (多くのライブラリがゲスト側とホスト側に既に配置されているため): qemu を介して通常の Linux に OpenGL パススルーを実装します。必要なもの:

まず、仮想 GPU を qemu に追加します。これには、OpenGL を使用する新しいグラフィックス出力モジュールを追加することも含まれます (これまでのところ、qemu は SDL を使用しています)。次に、ゲスト (Android は独自のグラフィックス システムを使用しますが、DRI/DRM の学習には問題ありません) と Mesa で実行される Linux カーネルで DRI/DRM ドライバーを作成します。ホスト側では、OpenGL 呼び出しで qemu から来るものを翻訳する必要があります。ホスト側の GPU がすべてのハードワークを行っているため、DRI/DRM 部分は非常に最小限で、ブリッジを構築するだけです。

于 2011-04-23T09:42:31.143 に答える