Embedded software in 2011
Crystal ball gazing is a hazardous activity. However, this week I am going to take the risk. I have the honor of having been invited to present a keynote speech at a technical conference in Grenoble, France. Although I speak at conferences frequently, I normally have some constraints with the topic – normally I am presenting a paper, an abstract for which was submitted and accepted months before. On this occasion, I have much more of a free reign – I was just asked to say about something to do with embedded software.
With the end of the year fast approaching, I concluded that it might be interesting to look at the trends for the industry in 2011 and beyond …
My presentation is essentially in two parts. Initially, I take a look at where we are technologically [which is broadly in a world where every one of us is surrounded by embedded systems where ever we go] and how we got here – looking at the various threads of technical progress over the years. The second part is the forward looking stuff. I consider four particular themes:
Android is a topic that I have addressed a lot in the last couple of years. Its use has expanded drastically in mobile phones and an increasing number of other devices using Android have begun to appear. I foresee this trend accelerating, as the possibilities of Android as a platform to build connected devices, usually portable and with a touch screen display, become clear to more developers.
Embedded systems with multiple cores are rapidly becoming the norm. Homogeneous multicore devices offer the opportunity to deliver immense computing power using a symmetric multiprocessing [SMP], where a single OS instance runs on all the cores. Heterogeneous multicore devices enable very efficient system design, where each core implements specific parts of the system’s functionality. The OS for each core may be selected appropriately. This is asymmetric multiprocessing [AMP].
Power consumption of devices is increasingly important, as both battery life and environmental issues may be very strong influences on system design. Historically, this has been solely the province of the hardware designer, but that is changing fast. The efficiency of the software affects power demand and, also, power management subsystems are commonly under the control of the embedded OS.
Lastly, the rapidly falling cost and increasing functionality of graphical displays is resulting in their deployment in many types of device. Users demand high quality graphics and an intuitive user interface – this is commonly termed the “iPhone effect”. Fulfilling these demands is hard, as programming such displays is tough, so developers are seeking good tools to design and deploy graphical UIs.
If you are attending the conference, please come and say Hello. If not, and you would like a copy of my presentation, please email.