2011-11-17 4 views
0

Androidをx86アーキテクチャに移植する際の技術的な問題を知りたい。 ソースがオープンしているので、x86で動作させるのが難しいのは何ですか? または、なぜそれをJavaバイトコードにコンパイルしてPC上のJVM上で実行できないのか尋ねるのは正しいですか?それはDalvik VMのためですか? 誰かがこれを説明できるかどうか分かりました。 ありがとうございます。なぜAndroidをx86に移植するのは難しいですか?

答えて

4

実際に、それはすでにのx86に移植されています

http://www.android-x86.org/はまた、Androidのは、JVMで実行されません。 Android Kernelは修正されたLinuxカーネルで、Cで書かれています。JVMで実行するようにコンパイルすることはできません。

DVM(Androidで使用)は、OpenSource JVMの実装Apache Harmonyに基づいて変更されたJVMです。 Android上のすべてのJavaアプリケーションはDVMで動作します。

+0

ルーカスありがとうございます。私はそれがJVM上で動作しないことを知らなかった。私はDVMがAndroidのJVMだと思った。情報ありがとうございました。だからAndroidをx86上で動かす際に必要な主なことは何ですか?またはARM以外のアーキテクチャですか?カーネルをx86命令セットに変更しますか? – madu

+0

ここでシステムを実行するために加えられた変更を見つけることができます:http://git.android-x86.org/ –

1

問題はありません。 VirtualBoxはAndroid OSゲストマシンを正常に動作させることができます。

+0

決して知らなかった!ヒントのためのThanx – barmaley

1

主な難点は、x86とARMがまったく異なるアーキテクチャであることです。彼らは、それらについて全く異なる考え方、異なる命令、異なるレジスタ、異なる挙動、異なるメモリアーキテクチャなどを有する。他のハードウェアとインタフェースする方法さえ異なる。

技術的な難しさの点では、アーキテクチャには互いに互換性のある命令やメカニズムがないため、ARM用のコンパイラに依存する動作はx86には存在せず、その逆もあります。

メジャーなものを実装するのに十分な1つを知っているのは、他のものを扱うのに多くの時間を費やしていないことを意味します。

関連する問題