By Andy The
I remember trying to convince DSP customers to use a Real-Time Operating System (RTOS) instead of while() loops. The challenge was getting them to see that using an RTOS was the only way to fully utilize the DSP without wasting MIPS spinning in a while() loop. Over time, DSP users adopted RTOSs and became accustomed to scheduling their routines based on priorities and interrupts.
Today’s processors are far more powerful than those of yesteryear, and the software landscape has changed dramatically. There is so much processing power available that developers demand more than just an RTOS. The want complete software platforms that have hardware drivers, operating systems, user interfaces, communication stacks, development tools, etc.
Android is the most recognized software platform in the embedded realm. Android is Linux based, but that is not what makes the platform so popular. What make Android so popular is that it is an amalgamation of many different components, such as a kernel, drivers, graphical UI, wireless stacks, app store, and so on. Each component is valuable, but it is the seamless integration of the components that make the Android platform so much more valuable that the sum of individual parts.
As multi-core processors continue to expand, it will be interesting to watch how these software platforms evolve. Maybe the next-generation embedded platform will include both hardware and software. Just add application.