JX – a Java operating system that focuses on a flexible and robust operating system architecture.
The JX system architecture consists of a set of Java components executing on the JX core that is responsible for system initialization, CPU context switching and low-level domain management. The Java code is organized in components which are loaded into domains, verified, and translated to native code.
Main-stream operating systems and traditional microkernels base their protection mechanisms on MMU-provided address space separation. Protection in JX is solely based on the type safety of the intermediate code, the Java bytecode.
The system runs either on off-the-shelf PC hardware (i486, Pentium, and embedded PCs, such as the DIMM-PC) or as a guest system on Linux. Many of the JX Java components, for example the file system, also run on an unmodified JVM. When running on the bare hardware, the system can access IDE disks , 3COM 3C905 NICs, and Matrox G200 video cards. The network code contains IP, TCP, UDP, NFS2 client and server, SUN RPC. Applications that run on top of JX include an Ext2 file system, a window manager, and a database system.
The JX system is developed as an open source system by the University of Erlangen (Friedrich-Alexander-Universität Erlangen-Nürnberg, FAU), a public research university in the cities of Erlangen and Nuremberg in Bavaria, Germany.