How to engineer efficient embedded Java applications
How to engineer efficient embedded Java applications
By Marc R. Erickson, IBM/Object Technology International Inc. , EE Times
November 2, 2001 (11:46 a.m. EST)
URL: http://www.eetimes.com/story/OEG20011102S0056
Embedded computing isn't homogeneous, like the X86 Wintel-oriented PC industry. There are dozens of 32-bit embedded processors and dozens more real-time operating systems. To make it cost effective to develop and support services that are delivered through and with a broad range of devices, it makes sense to turn to technology that can run uniformly in every device that may be encountered.
This is where virtual-machine technology shines. The virtual machine heals the differences between device platforms. Instead of supporting hundreds of variants of an application, only one instance of an application program needs to be created.
Today, Java technology is the most popular virtual-machine-based programming environment. Under Java 2 technology, a significant improvement over the original Java 1, there are three major classifications of standards: J2EE, the Enterprise Edition; J2SE, the Standard Edition, oriented to works tation platforms; and J2ME, the Micro Edition, focused on embedded computing.
Standards for the Java language and supporting class libraries have released numbers that can be confusing. For example, Standard Edition R1.1.x language specifications are Java 1 technology. But R1.2.x and R1.3.x language specifications are for Java 2 technology.
It's particularly unfortunate for embedded developers that the first Personal Java specifications were based upon Java 1 technology since today, almost all developers of end-to-end computing systems prefer Java 2. Pervasive end-to-end computing is the most important reason for using a J2ME-compatible or Java 2 specification in conforming components for embedded projects. Luckily, J2ME Personal Configurations are now being developed by the Java Community Process, a body that approves the creation of Java standards .
This group, which now includes participants from many companies, publishes standards for the basic Java ru n-time environment and many significant extensions. The standards are defined in documents, sample reference implementations and verification test suites.
To become certified as Java compatible, product implementations must obtain and use the verification test suites. Certification is done by an authorized testing center, also under license. The JCP standards are particularly interesting in that they don't stop at describing the definition and behavior of Java application programming interfaces. They also prescribe that a complete set of these APIs must be included.
Related Articles
- PRODUCT HOW-TO: Use ARM DBX hardware extensions to accelerate Java in space-constrained embedded apps
- Leveraging the RISC-V Efficient Trace (E-Trace) standard
- How Low Can You Go? Pushing the Limits of Transistors - Deep Low Voltage Enablement of Embedded Memories and Logic Libraries to Achieve Extreme Low Power
- How embedded FPGAs fit AI applications
- An Efficient Device for Forward Collision Warning Using Low Cost Stereo Camera & Embedded SoC
New Articles
- Quantum Readiness Considerations for Suppliers and Manufacturers
- A Rad Hard ASIC Design Approach: Triple Modular Redundancy (TMR)
- Early Interactive Short Isolation for Faster SoC Verification
- The Ideal Crypto Coprocessor with Root of Trust to Support Customer Complete Full Chip Evaluation: PUFcc gained SESIP and PSA Certified™ Level 3 RoT Component Certification
- Advanced Packaging and Chiplets Can Be for Everyone
Most Popular
- System Verilog Assertions Simplified
- System Verilog Macro: A Powerful Feature for Design Verification Projects
- UPF Constraint coding for SoC - A Case Study
- Dynamic Memory Allocation and Fragmentation in C and C++
- Enhancing VLSI Design Efficiency: Tackling Congestion and Shorts with Practical Approaches and PnR Tool (ICC2)
E-mail This Article | Printer-Friendly Page |