-3

ご存知のように、バイトコードを Java コンパイラーによって提供されるマシンコードに変換するための JVM があります。JVM がプラットフォームに依存することは誰もが知っています。頭に浮かぶ疑問の 1 つは、プラットフォームの独立性を達成するために、他の言語用の JVM のようなアプリケーションを誰も作成しなかったのはなぜですか? JVM がプラットフォーム非依存を実現するのであれば、すべての言語がプラットフォーム非依存になる可能性があり、コンパイラと JVM のようなアプリケーションを作成するだけで、他の言語がプラットフォーム非依存になるのを助けることができると思います。

CPP や C だけを考慮しないでください。

ありがとうございます。

4

1 に答える 1

1

問題は、C++ が特定されておらず、マシンに依存して移植可能な有用なバイトコード形式を持っていることです。

int、long og ポインターのサイズさえわからない場合、どのように C++ バイトコードと vm を取得しますか?

また、遅くするには遠く離れており、それを行うメリットはあまりありません。

- - - 追加した - - - - -

そして、それができたとしても、何の利益があるでしょうか。すべての C++ プログラムは、そのサービスの大部分を依然としてオペレーティング システムに依存しているため、たとえば C++ の移植可能な形式を使用していたとしても、Windows プログラムは Intel/Amd x86 チップでしか実行できません。 Windows でサポートされている唯一のチップです。

はい、Windows RT (アーム バージョン) については知っていますが、そのバージョンの Windows では、通常のデスクトップ C++ プログラムが依存するほとんどのメソッドが削除されています。そのため、Windows プログラムを Windows RT 用に (再) コンパイルすることはできません。

于 2013-07-15T13:13:43.433 に答える