| CARVIEW |
Many technologies, one platform
Java SE for Embedded offers Java SE functionality, security, and portability with specific features and support for the higher-end embedded market
» Download Java SE for Embedded Now
|
Using Java SE for Embedded enables you to develop highly functional, reliable, portable and secure applications for today's more powerful embedded systems. We offer a full range of products, services, and support that makes it easy for you to develop with Java SE for your embedded projects. When you're ready to deploy, we offer an innovative value-based pricing model that helps align royalty costs with your product pricing. Contact us for more information. » Read More News
June 2009
April 2009 May 2008
Free evaluation copies available.
October 2007
October 2007
October 2007 CommunityJava SE for Embedded
Did you know that there is a Java SE for Embedded community in place? Take a look at what's going on with the wide range of vendors and technologists in this space. Contribute to Java SE 7!
Sun releases weekly snapshots of the complete source, binaries, and javadoc for Java SE 7. You can review or contribute code as it is being developed. Java SE Community Development Model
With the Java SE 6 release, Sun is making the development of the JDK more transparent, creating opportunities for collaboration and early feedback with the worldwide developer community. Now, you can directly contribute to the implementation of the JDK! Need Developer Help?
Try our Free Developer Help Beta program. Get expert assistance from Sun engineers when using our technologies. Need more info?
If you need more information on our Java SE for Embedded products, engineering services or support programs, please contact us. FAQJava SE for Embedded offers the functionality, security, compliance, portability and robustness of Java SE for traditional desktop and server systems as well as specific features and support for the higher-end embedded market. The documentation of Java SE including the Java language, Hotspot VM, Libraries and Tools applies to Java SE for Embedded. Functionality that is specific to Java SE for Embedded is described below.
Q: 1. What are the system requirements for Java SE for Embedded? These are summarized on the systems requirements page. Q: 2. How is Java SE for Embedded functionally different from standard Java SE? Java SE for Embedded derives from Java SE. It can support the same platforms and functionality as Java SE. Additionally, it provides specific features and support for the embedded market. These embedded-specific features and support currently include additional platforms, small footprint JREs, headless configurations and memory optimizations. All Java SE for embedded offerings are Java SE compliant. Embedded systems can differ from traditional Java SE Desktop and Server configurations in a few key areas. These include RAM, permanent local storage (Disk, ROM or Compact Flash), KVM resources (Keyboard, Video, Mouse) and platform support (CPU and OS). For each of these areas, Java SE for Embedded provides specific support for embedded devices:
Additional Platform Support Java SE for Embedded supports the traditional Java SE desktop and server platforms. This includes:
Additionally, it also supports platforms specifically for embedded such as the PowerPC microprocessor family and Linux OS's such as Debian and Yellow Dog. We are continually extending our embedded-only platform support. Upcoming plans include support for Carrier-Grade Linux and XP-Embedded. Please contact us if you don't see the platform you need. Q: 3. How does it differ from Java ME? Java ME and Java SE for Embedded address different segments of the embedded market. The Java ME CLDC and CDC offerings are designed for resource-limited devices including cell phones, handsets and media players. The APIs of CLDC and CDC are more limited than Java SE but enable these ME offerings to support devices with small footprints. Java SE for Embedded provides the rich functionality of Java SE and is targeted at higher-end embedded devices - generally, those devices with at least 32MB RAM and 32MB of ROM. Q: 4. What platforms does Java SE for Embedded support? Java SE for Embedded supports 28 different ISA/OS platforms. The hardware platforms include x86, x64, PowerPC, SPARC (32 and 64 bit), ARM and MIPS. The OS platforms include Linux, Windows and Solaris. Many of these platforms are commonly supported by all Java SE (Embedded, Desktop and Server). The embedded-only platforms such as PowerPC, headless and small footprint JRE, are available through the Java SE for Embedded downloads page. Q: 5. I don't see the platform I need supported, what can I do? If your project has different hardware (cpu, memory) or OS requirements you can contact us. We provide specialized engineering services and can work with you to provide a solution. Q: 6. What are the RAM and ROM/Disk requirements for Java SE for Embedded? Memory footprint requirements are dependent on the platform (OS, swapping, etc), SE release, SE functionality (e.g. headless or not) and application. We generally recommend 32MB for RAM and 32MB for ROM/Disk/Flash but can support slightly smaller configurations. Q: 7. How does Java SE for Embedded compare in performance with C/C++? Though ultimately performance is application dependent, Java SE applications perform on par with C/C++ applications. Many third party tests have demonstrated Java to be equal or better than C/C++ performance. Java's dynamic just-in-time compilation and aggressive in-lining generates code that can be better optimized than static C/C++ compilation. Q: 8. How do I call my native drivers and applications? The Java SE specification provides an interface to native drivers and C or C++ functions called the Java Native Interface (JNI). JNI works by creating a Java-visible wrapper around the native code, a new header file to cross-reference the wrapper, and then a call from the Java program which allows parameters to be passed and received by the native code. Q: 9. How do I debug my Java application for embedded? There is a full set of APIs and tools that enable you to debug your Java application. Both local and remote debugging is supported. There are also APIs, tools and resources for observability, management and performance profiling. A good starting point for all these activities is the Java SE 5.0 Troubleshooting and Diagnostic Guide. Q: 10. How is Java SE for Embedded licensed? Java SE is free to use for development of embedded applications. We provide affordable licensing for deploying Java SE in an embedded device or as part of a embedded-based system. Please contact us when you are ready to deploy or if you have already deployed but not sure you have the correct license. Q: 11. Does deploying Java SE for embedded devices or purposes require a royalty? Yes. Sun's license for Java SE enables it to be freely used for general purpose desktops or servers. If Java SE is bundled as part of a dedicated solution that involves or controls hardware of some kind, then it's likely an embedded application and is subject to modest royalty payments. Q: 12. How do I determine how much royalty I'll owe on my embedded offering that includes Java SE? Please contact us to set up an appointment with our specialized OEM sales team. They have the necessary information to determine the pricing for your product. Sun's embedded royalty model seeks to match royalty costs to the price/volume of your product so that you can keep costs low and use Java SE on the wide range of SE-capable products. Q: 13. Do I have to pay to develop my embedded application for Java SE? No - developing with Java SE for embedded or non-embedded purposes is free, as are the NetBeans tools best suited for the job. You can and should sign a royalty agreement with Sun during the development phase, but you do not owe any royalty payments until you actually ship product. Q: 14. How do I get started? It's easy. There are 3 main steps:
|
Related Embedded ResourcesRelated ResourcesRelated DownloadsPopular Topics
Sun ResourcesRelated SitesGetting Started? | ||||||||||||||||||||||||||||||||||||||
| ||||||||||||

