1

重複の可能性:
Javaを使用してオペレーティングシステムを作成することは可能ですか?

JavaやClojureなどのJavaバイトコードにコンパイルされる言語を使用して、Java仮想マシンで完全に動作するオペレーティングシステム全体を理論的に作成することは可能でしょうか。

4

3 に答える 3

3

CPUがJavaバイトコードを実行できる場合にのみ可能です(Javaプロセッサを参照)。それ以外の場合は、ハードウェアを初期化し、バイトコードを解釈またはJITコンパイルするために、いくつかのネイティブマシン命令が必要になります。

于 2012-11-25T05:00:06.460 に答える
2

あなたが提案したことを実行しようとしたJavaOSと呼ばれる(現在は放棄された)プロジェクトがあります。

于 2012-11-25T04:58:51.047 に答える
2

「オペレーティングシステム全体」の意味によって異なります。最も信頼できるアプローチは、「ユーザースペース」にJavaを使用し、ハードウェアアクセスの基盤となるOSとしてLinuxのようなものを使用するハイブリッドOSです。

考慮すべきいくつかの事柄:

  • 明らかに、JVM自体は何かで実行する必要があります。これは、別のOSで実行されているネイティブJVM実装である場合もあれば、ハードウェアである場合もありますが、いずれにしても、スタックのある時点で純粋なJava以外のものを使用する必要があります。したがって、この役割を果たすためのLinuxのようなものの提案。
  • 追加のネイティブコードのリンクを許可しない限り、基盤となるハードウェア/プラットフォームとの相互作用は、Javaランタイム環境で利用できるもの(ファイルアクセス用のファイル抽象化など)によって決まります。これは、動作するOSシェルを実装するには確かに十分ですが、たとえば、多くのデバイスへの直接ハードウェアアクセスを実装するには十分ではない場合があります。
  • 最新のOSの場合、グラフィックス(または同様の高性能グラフィックスライブラリ)にOpenGLを使用することをお勧めします。これは現在、標準のJavaランタイム環境にはないため、これを含めるためのソリューションを見つける必要があります(LWJGLなど) 。
于 2012-11-25T13:24:17.003 に答える