通常、ブートストラップローダーはアセンブリ言語を使用して記述されます。ネイティブインターフェイスでJavaを使用してドットを付けることは可能ですか?
4 に答える
いくつかの可能な解決策があります:
- Javaバイトコードを実行できるハードウェアが存在します。
- また、Javaコードをさまざまなコンパイラでネイティブコードにコンパイルすることもできます。
- 最後に、Javaで残りのプロセスを開始するミニローダーを使用できます。
この解決策はどちらも簡単ではなく、あまり意味がありません。しかし、可能です-はい。
完全を期すために:JNodeは、JavaでPCオペレーティングシステムを作成することを目的としたプロジェクトです。
また、この質問への回答が役立つ場合があります。Javaでデバイスドライバーを要求しますが、それは完全に同じ質問ではありませんが、回答に示されている解決策のいくつかは、質問にも役立つ場合があります。
誰かがそれを行う方法を思い付くと確信しているので、私は完全にノーとは言いたくありませんが、これは確かに非常に難しい(そしておそらく無益)でしょう。
JavaをJVMで実行するには、十分な量のOSをネイティブにブートストラップする必要があります。そうすると、Javaへの切り替えは少し時間の無駄になります(複雑さを追加する以外に、実際には多くのことは達成されません)。
バイトコードを「ネイティブに」実行できるデバイスもありますが、ほとんどの場合、それは実行可能ではないと思います。
もちろん。より良い質問は、それが実用的であるかどうか、そしてそれが既存の方法と比較して実装時間の価値がある利益を提供するかどうかです。
@MnementhはJNodeについて言及しました。ちなみに、JNodeはブートストラップローダーとしてGRUBを使用しています。
私は@Mnementhに同意します。Javaでブートローダーを実装することは技術的には可能ですが、おそらく難しいでしょう。しかし、OPへの私の質問は「なぜあなたはそれをしたいのですか?」です。要点がわかりません。