在内核上编写基本的Java shell或GUI

时间:2012-11-17 21:34:32

标签: java shell user-interface operating-system kernel

作为一个爱好,我一直在用java编写shell。这是非常基本的,它包括创建,删除,通过命令行读取文件或通过类似桌面的环境(如果安装了插件)(我也写过)。

现在我的问题非常复杂,但我希望有人可以指出我正确的方向。

  • 是否存在具有java的图层或操作系统 支持,所以我可以在它上面运行我的java应用程序,作为一个 贝壳?最小的东西?

我还没有完全理解java中的库继承,而且我不确定AWT和swing应用程序是否是为那些主要操作系统构建的。

有人能指出我正确的方向吗?我只想在这里学习,而且我并不完全理解我的java程序下层的全部细节。

2 个答案:

答案 0 :(得分:2)

有(至少)2个操作系统级支持Java的示例

  • Sun有一个名为JavaOS的裸机操作系统,不再可用。我不记得确切的细节,但我认为目标架构是某种嵌入式处理器。

  • 在x86上运行一个名为JNode的开源裸机Java操作系统。它已经有一个命令shell(" bjorne" shell)和一个原始GUI。

JNode的坏消息是它没有工作的隔离带#34;实现,因此不可能阻止有缺陷的应用程序使操作系统陷入困境。这已经成为一个进步的障碍......特别是因为可行的隔离实现可能需要重新设计系统架构以支持每个隔离的单独地址空间。

答案 1 :(得分:1)

Java不直接与操作系统交互,而是使用Java VM作为Java应用程序和托管操作系统之间的中介。拥有此VM允许Java应用程序可移植,因为它抽象了操作系统细节。 Java VM实现因不同操作系统而异,但这可能不是您应该担心的事情; VM可用并分发给大多数主要操作系统,只需从http://www.java.com下载并安装一个。之后,您可以随意使用自己的应用。