Inspired by the information you referred to on the WIND site, I went to the javasoft site and found the following explanation. It clearly states that EmbeddedJava runs "ON TOP" of an RTOS. You are right ZARAH, and I am happy to have confirmed this logistical fact. The next question is to try to figure out specific cases of where this is being used and how often WIND is the chosen RTOS.
I pasted below the info from the Javasoft site just in case anyone is interested. It is good for any lay-people.
BTW, a friend of mine works with an engineer over at one of the big aerospace companies, and he offered that Tornado is a GREAT product/tool set. It is nice to get confirmation from the customer end as well as the investor end.
------from javasoft.com-------------- What is EmbeddedJava?
EmbeddedJava is a new Java Application Environment for high volume embedded devices.
Similar to Java, EmbeddedJava consists of core and standard extension APIs, and is designed specifically for severely resource constrained environments. EmbeddedJava includes a feature level subset of Java, therefore EmbeddedJava applications are upward compatible to both PersonalJava and Java.
Developers use EmbeddedJava to create a variety of products including mobile phones, pagers, process control, instrumentation, office peripherals,and networking routers and switches.
EmbeddedJava applications run on real-time operating systems, and are optimized for the constraints of small memory footprints and diverse visual displays. EmbeddedJava enables manufacturers of devices to take advantage of the portability and flexibility of Java in their product software.
The EmbeddedJava API is designed to be easily portable to any real-time operating system, and to run on a wide variety of microprocessors. Using EmbeddedJava reduces time to market by allowing code portability and re-use, while taking advantage of the ease of development and inherent security built into the Java language.
Memory Constraints
Since embedded software must run in resource constrained environments, application development requires the ability to select only the functionality required for a specific product. For example, if a device (such as a pager)requires no file system, the file system support is left out. Following this principal, EmbeddedJava is designed to be highly modular, scalable and configurable, while requiring minimal memory.
EmbeddedJava contains several levels of functionality support, including a Java Virtual Machine, plus core and optional libraries that may be used as needed. Support for some services (such as internationalization) are provided in both the Java JAE and EmbeddedJava JAE; however, the underlying implementation, features, and resources required may be quite different.
Performance
Another design goal of real-time embedded applications such as network routers and switches, is to preserve the real-time support offered by the hardware in the final product. In other words, fine granularity performance is required. For this reason, EmbeddedJava is designed to be used on top of a real-time operating system. Performance and porting considerations are built into its design.
New Development Tools
Available separately is a new set of specialized tools for embedded development. Developers use these tools to place executable code in ROM, configure and compile build images, and estimate resources required.
Upward Compatible Applications
EmbeddedJava applications are upward compatible with and will run on PersonalJava and Java, provided equivalent device support is present.
EmbeddedJava Compatibility
There will be a compatibility program to ensure consistency of the EmbeddedJava platform across implementations. The certification process is similar to the existing process for Java. |