From: Gilbert H. <gc...@mi...> - 2014-01-05 15:37:18
|
Dear Denny, Thank you for expressing an interest in JOS, a Java-based operating system. You're asking the same question that has been asked since the project was established in 1997. Every so often, someone would ask this question. Surprisingly, we would get a wide variety of opinions about what the right answer should be. In 1997, the JOS Project was way ahead of its time. The software industry hadn't yet produced and established any of the standard APIs an operating system would need, such as OSGi and JAF, EL and JNDI, Pack200 and Isolate, and even java.io.Console. We proposed a Console interface in 1997! The industry hadn't yet matured to the point where programming languages other than "Java" were accepted to run on an off-the-shelf JVM, such as Groovy and Scala, Jython and Ceylon. We embraced from the very beginning that non-Java programming languages can be used along side Java in a Java-based operating system. As you may have heard from Avery Regier, the project *never* produced working code. Avery points to the fact that we never had a widely successful Java-based kernel officially called "JOS" and adopted as the official Java-based operating system. He's right. We've never had a successful pure Java-based kernel. We might point to the fact that we could never agree on which architecture had the best chance of commercial and technical success. In fact, we've never had a consensus about how to go about building the best Java-based anything. I have a very different opinion. The JOS Project produced working code. I can point to JEPS, Amairgin HTTP server, JJOS, kissme, teaseme and, even as Avery points out, JNode. One of the most widely known Java-based operating systems is called Android. But there are others, like JIKES OS. There was two from Sun Microsystems, one called JavaOS. I have been actively contributing to the JOS Project from 1997 thru 2013. So, forgive me for being a little annoyed and concerned when someone says that it's dead. Why is JOS dead? The project is dead because everyone believes that it is dead. Everyone believes that its dead because there is little effort put into maintaining the super-project web site. Everyone believes that it is dead because there is no new release of working code. No new release is planned. In 1997, JOS was a difficult, if not impossible, ambitious and forward-looking project. We enthusiastically agreed that an operating system could be built from Java technology, and should be. This fact has never changed. I believe this more today than I did in 1997. 1. Android. This is a commercially successful Java-based operating system. It uses the Transitional Architecture because it uses a modified Linux kernel and low-level device drivers written in C/C++. It is not quite the pure Ultimate Architecture that we would have liked. We strongly recommended a package loader, a package-oriented class loader, instead of a class loader to many reasons, such as saving memory at runtime. Android adopts this strategy. As we predicted, Android developers continue to struggle with the mixed model that combines C/C++ and Java programming languages. 2. JNode. This is an experimental, proof-of-concept project for a Java-based operating system. It uses the Ultimate Architecture. The Java Virtual Machine/Kernel is written in the Java programming language. Unfortunately, it suffers from a non-modular and non-preemptive multitasking internal model. 3. JJOS. This is an experimental, proof-of-concept project for a Java-based operating system. It doesn't quite use the Ultimate Architecture. The Java Virtual Machine/Kernel is written in C/C++. It suffers from non-preemptive multitasking internal model. And yet, it proves that device drivers can be written in the Java programming language. 4. CjOS. We're currently migrating from a very large monolithic Java class library to OSGi. Today, you can run CjOS inside any OSGi container, such as Equinox, Eclipse, IBM WebSphere Application Server. Of course, this is my favorite project. It is following the strategy of Linux. Development of Linux tool almost two decades. The last piece added to Linux was a kernel. The last thing we're adding to CjOS is a kernel. JOS is dead. And yet, its research still stands. It's still true and relevant. It should be the first thing to study before trying to build a Java-based operating system of your own. Thanks again, On Jan 3, 2014, at 4:29 PM, Denny wrote: > Is jos dead, and if so why? On the official page it looks like nothing happened since 2006... > > -- > Denny <den...@gm...> > > ------------------------------------------------------------------------------ > Rapidly troubleshoot problems before they affect your business. Most IT > organizations don't have a clear picture of how application performance > affects their revenue. With AppDynamics, you get 100% visibility into your > Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! > http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk > _______________________________________________ > jos-general mailing list > jos...@li... > https://lists.sourceforge.net/lists/listinfo/jos-general |