Define your terms, counseled Voltaire, and in keeping with his advice, allow me to begin with the following:
A good definition, as far as it goes. But it doesn’t go far enough for the purposes of this discussion. Wikipedia comes closer to the mark:
That’s better, but it still falls short. However, the Wikipedia entry also states that:
Now that’s more like it. Concurrency in computer systems isn’t simply a matter of doing several things all at once; it’s also a matter of delivering a solid user experience. The system must always be available and it must always be responsive: no “surprises” allowed.
This definition seems tailored-made for in-car infotainment systems. Here, for example, are some of the tasks that an infotainment system may perform:
- Run a variety of user applications, from 3D navigation to Internet radio, based on a mix of technologies, including Qt, HTML5, Android, and OpenGL ES
- Manage multiple forms of input: voice, touch, physical buttons, etc.
- Support multiple smartphone connectivity protocols such as MirrorLink and Apple CarPlay
- Perform services that smartphones cannot support, including:
- HVAC control
- discovery and playback of multimedia from USB sticks, DLNA devices, MTP devices, and other sources
- retrieval and display of fuel levels, tire pressure, and other vehicle information
- connectivity to Bluetooth devices
- Process voice signals to ensure the best possible quality of phone-based hands-free systems — this in itself can involve many tasks, including echo and noise removal, dynamic noise shaping, speech enhancement, etc.
- Perform active noise control to eliminate unwanted engine “boom” noise
- Offer extremely fast bootup times; a backup camera, for example, must come up within a second or two to be useful
Jugging multiple concurrent tasks |
Still, that isn’t enough. Automakers also need to differentiate themselves, and infotainment serves as a key tool for achieving differentiation. So the infotainment system must not simply perform well; it must also allow the vehicle, or line of vehicles, to project the unique values, features, and brand identity of the automaker.
And even that isn’t enough. Most automakers offer multiple vehicle lines, each encompassing a variety of configurations and trim levels. So an infotainment design must also be scalable; that way, the work and investment made at the high end can be leveraged in mid-range and economy models. Because ROI.
Projecting a unique identity |
The nitty and the gritty
Concurrency, performance, reliability, differentiation, scalability, flexibility — a tall order. But it’s exactly the order that the QNX CAR Platform for Infotainment was designed to fill.
Take, for example, product differentiation. If you look at the QNX-powered infotainment systems that automakers are shipping today, one thing becomes obvious: they aren’t cookie-cutter systems. Rather, they each project the unique values, features, and brand identity of each automaker — even though they are all built on the same, standards-based platform.
So how does the QNX CAR Platform enable all this? That’s exactly what my colleagues and I will explore over the coming weeks and months. We’ll get into the nitty and sometimes the gritty of how the platform works and why it offers so much value to companies that develop infotainment systems in various shapes, forms, and price points.
Stay tuned.
POSTSCRIPT: Read the next installment of the QNX CAR Platform series, A question of architecture.
Rather than setting out to extend the meaning of concurrency to include fault tolerance, it would have been better to use both terms and explain the well known definitions of both terms.
ReplyDelete