Actual and de facto standards continue to drive products and, in some cases, innovation. The Java-based, cross-platform Eclipse development is a de facto standard that has garnered significant support. Watch for the Rich Client Profile to make it a key deployment platform as well.
Standards like PCI Express and Serial ATA (SATA) provide a level of software transparency, allowing existing drivers to be used. But new code must be written to take advantage of many features in InfiniBand and Advanced Switching.
Demand for secure communication, authentication, and digital rights management software is on the rise. The need is showing up in the smallest embedded wireless to the largest gateways.
Increased use of software control of critical hardware, such as drive-by-wire systems, will require hardened operating systems and apps that meet safety-oriented standards.
TOP TEN- FOLLOWING THE ECLIPSE Graphical, open-source development project Eclipse continues to grow. It has already gained a following of developers and vendors. Expect this trend to continue throughout the decade. It has exceeded its Java roots and is currently being driven by C/C++ tool use. Though primarily used as an application-development tool, don't be surprised when Eclipse actually shows up in applications.
- BE SAFE OR LIABLE Safe designs are critical for products like aircraft, medical devices, and vehicle control. DO-178B helps developers meet the demands for aircraft technology, but the importance of highly reliable systems has expanded greatly as embedded systems infiltrate every aspect of life. Use of certified real-time operating systems and work like Safety Critical Java specifications will be worth following this year and in years to come.
- WHOSE FRAMEWORK? J2EE continues its ascent, and Microsoft did a great job filling out its .Net framework. However, there's still much to do for both platforms. Java has proven to be a multiplatform environment, but development tools need to match and exceed the competition. The .Net threads are weaving their way through Windows and Windows applications, making it a more difficult multiplatform solution. The war for the hearts and minds of developers and CIOs will continue to rage on as more embedded network devices are tied to vendor services.
- EMBEDDED LINUX FORGES ON Embedded Linux's uptake continues with seemingly no end in sight. Linux enhancements are coming out faster than embedded real-time operating-system (RTOS) vendors can incorporate them. This is good because developers understand that quality, service, and support are worth the money. It especially holds true for tools. Look for more Eclipse-based solutions with tight integration, which include vendor-specific Linux enhancements, making the move into the Linux mainstream.
- PUTTING A LOCK ON SECURITY Last year had most developers and vendors learning about security plus the importance of encryption and authentication in embedded devices. The hardware and software is finally arriving in a wave that knowledgeable designers can exploit. The main problem will be the lack of standards and vendor-specific hardware. Some standards like SSL will become key for embedded devices. AES and DES are just encryption methods, not solutions. XML has the same problem: It's a tool, not a solution.
- JAVA WINS AND WOES Java continues to battle through growing pains and challenges from competing languages. Some much needed language improvements are coming online. Implementations are finally incorporating enhancements in the real-time and safety-critical areas, making Java the one to watch in these areas. It is still notoriously easy to "shoot yourself in the foot" using the alternatives. But nothing is free.
- FINALLY! BETTER DIAGNOSTIC TOOLS Someone is listening. Catching bugs early leads to lower cost and better performing and more reliable solutions. A number of diagnostic analysis tools were announced at the end of last year, and more will be delivered this year. Trace analysis will allow tracing to become more than a way to generate gigabytes of junk. Hooks into system modules, such as network stacks, and even applications will let developers find out what's going on inside instead of resorting to guesswork. But you have to learn them to use them.
- UML: PUT UP OR... UML 2.0 is here. It's real, and every major UML vendor has updated its products. It's time to see whether the market will continue inching up or if improvements in design methodology can convert code crunchers. UML's learning curve won't be as steep this year, but it remains significant. Tools tailored to current C/C++ developers will help. The big barrier for mid-range developers continues to be the perception of cost.
- MIGRATION TO 32 AND 64 BITS The 8-bit assembler maven isn't going anywhere. However, 32-bit MCUs and 64-bit embedded processors are becoming more common, accelerating the migration to high-level languages in embedded applications. The challenges for 32-bit migration are major, including how to suppress power consumption. Taking advantage of 64-bit processors should prove interesting as software developers consider how to keep cluster interconnects like Advanced Switching, Gigabit Ethernet, and InfiniBand humming.
- 8-BIT STILL RULES Though the glamour is at the high end, the 8-bit realm continues to lead in shipments. As a result, it's imperative to maintain 8-bit expertise. Check out the new high-level language compilers before committing to assembler, even for those tiny eight-pin chips. Larger flash memories mean more application code.