Open-source continues to propel embedded software growth, despite the fact that it's augmented by services or proprietary extensions. Open-source software brings a level of compatibility to operating systems, tools, and middleware that simplifies the choice of platforms and integration of networked solutions.
Software growth is expected to steadily rise across the board (Fig. 1). Likewise, the price of software is dropping relative to the expanding functionality. This indicates even more software development work being done with greater sophistication. It also means many more integrated software components, leading to different integration approaches (e.g., bundling).
BUNDLING FOR PROFIT AND PURPOSE
To simply their lives, vendors and developers look for "one-stop shopping." Unfortunately, the scads of options make a Chinese menu look simple.
Expect even more full bundles that include everything from development tools and the operating system to protocol stacks and middleware. In the past, this type of bundling simply involved packing more stuff into a box. But developers want solutions that save them time as well as money.
Integration with systems this complex can be very time consuming initially. It also can require lots of support. Look for this level of integration to improve. Of course, vendors prefer this approach. The price tags will be large, and the sales and marketing departments will target top-level management. It's designed to lock in customers while providing them with lower-cost solutions.
The operating system remains a critical portion of the software solution. So it's interesting to see how criteria have evolved over the years, especially as the number of viable options stabilizes. Venture Development's latest survey on real-time operating-system (RTOS) criteria has some of the perennial favorites on top of the list (Fig. 2).
Security is finally moving up the charts, evidenced by the greater number of available security frameworks. It remains a confusing aspect of system design, though, and developers still don't properly understand it. Security middleware raised its head in 2005, and the increased hardware support likely will push developers to take advantage of it.
Familiarity with the programming interface is one reason why Linux continues to make breakthroughs in the embedded space. The interfaces may not be the best, but they work. They also are the most well known, making it easier for developers to target different product areas. Look for Linux in even more products, especially under the hood of your car or in your cell phone.
MORE CPUs, MORE SOFTWARE
Clusters are mainstream. Yet management software and virtualization software are just coming into their own for x86-based blades. Hewlett-Packard, IBM, and Sun have had the market locked up until now. Linux and Xen are leading the open-source charge, so keep an eye out for more products and announcements in this area.
Virtualization isn't just for clusters. It's a migration path for legacy systems due to increasing microcontroller power and memory capacity. More vendors are delivering products, and the adoption rate should jump significantly this year.
Developers will pursue vendors supporting standards like DO-178B and EAL-6 to gain access to a high level of software quality. Fewer bugs in shipping code means lower support costs. Fixing bugs in the field is still two to three orders of magnitude more costly than fixing bugs when they first appear. An ounce of prevention is worth more than a pound of cure, even this year.
Real-time and safety-critical Java standards will finally move to the fore this year. However, adoption may lag as more designers gain the needed experience before taking advantage of these technologies.
Also, take a look at Ada this year. It tends to be used in applications that already require real-time, safety, and security support. It's the source for much of the standards work for other languages, too. Why not just check out the source?
Continued growth in UML (Unified Modeling Language) will occur because both specifications and applications can be built in using the same system. Development platforms supporting UML 2.0 will be ubiquitous this year.
Scripting languages in embedded systems will be the experiment of the year. They provide fast, flexible development and deployment that can exploit underlying legacy and product-specific support software.
The ubiquitous Ethernet protocol stacks are an integral part of open-source solutions. However, new hardware technologies now push the need for additional protocol stacks. For instance, storage systems are turning to protocols like iSCSI and InfiniBand. These switch-fabric connectivity technologies link processor farms with disk farms.
Wireless protocols like 802.11g are designed to be wireless Ethernet. New protocols, particularly ZigBee, offer similar functionality, but transient connectivity is the norm rather than the exception. Developers need to understand the functionality available with ZigBee and other wireless interconnects emerging this year (e.g., Ultra-Wideband).