Friday, July 1, 2011

Inside to tablets and new technologies; QNX and more -July 1st

By Sergey Priporov

There was a “silent” event in Q1 2011 which was almost missed in press releases.
RIM announced the start of shipment of the Tablet device based on new Tablet OS (based on QNX). You can say that there are many new tablet devices are coming from different manufactures each quarter and this device is small part of this world. Of course in terms of numbers it's a small part. However I would like you to pay much more attention on this event.

The reason is that this tablet device introduces completely new technologies on mobile devices horizon. The new technologies are not new in IT domain in embedded systems but they are new for mobile devices. New staff is derived from QNX core OS components which can change mobile devices capabilities dramatically. It will not be applied to Tablet devices only. As we can guess RIM will move all mobile devices portfolio to this new core OS since RIM acquired QNX.

The key new QNX technologies for mobile devices are as follows:

- Micro-kernel design targeted for hard real-time execution environment support
- Transparent task to task communications based on universal SW messaging bus
- Fault tolerance support, embedded into the system based on address space isolation on threads level
- Real Time multitasking
- Incredible Scalability (from simple controllers to entire Airport Control system (London Heathrow Airport LHR)
- Transparent embedded SMP support for multi-core solutions
- Certified POSIX PSE52 Real-time Controller 1003.13-2003
- Certified IEC 61508 Safety Integrity Level 3 (SIL 3)
Let’s try to understand how it may impact future of mobile devices world.
- Micro kernel architecture and messaging bus provide very good scalability of core components and allow creating products in all diapasons of costs such as low-end, mid-tier cell phones, smart phones, and tablet devices.

- Hard Real-time support capabilities of QNX OS allow platform to provide real multitasking.

- Transparent task to task communications and SMP allow developers to create product for multi-core HW variants without code changes in system components

- Since QNX supports transparent task to task communications on kernel level, all devices under QNX can be considered as one cluster if devices has any type of connection into some network (cell network for example or Wi-Fi network or Ethernet)

- Transparent task to task communications allows developers to create new type of connectivity between devices when resources of one device can be shared with another one device transparently without code changes and extra protocol stacks using for communications.

- Real multitasking and resource management will allow developers to create devices with multiple displays, cameras without heroic efforts to do it (such as present in Android / Linux space)

- Any SW component in QNX can be replaced on fly, includes drivers. (No changes and rebuild for kernel procedures required). It allows simplifying SW update procedures and new components adding in production devices shipped on the market already. New external peripherals support can be added easy. It means that device capabilities can be incrementally increased during life cycle. This process can be planned by marketing teams

- QNX can execute few Applications execution environment frameworks such as Android, AIR, QT, and QNX native Apps. It means that device can be as chameleon device with dynamic UI change on fly by user demand. It can be downloadable as a UI packages.

- QNX is certified to support critical Applications in many areas such as Medicine, Automotive, and Military etc. It means that QNX allows developers to cross reuse services. For example Android Apps can work safely in car controllers. The exercises with boot time optimization are not necessary for QNX as it is for Linux.

- SW development process and H/W bring up phases for manufactories can be simplified.
Target board can be shared between few developers to work on SW debugging. QNX deployed on PC work station, and PC will communicate with QNX deployed on Target board transparently in multi – user mode. Derivers can be reloaded on Target board as necessary on fly. QNX on target board will not have crashes due to SW component failure because it’s designed this way.

- No fragmentation on platform level

The list of new capabilities of the mobile devices under QNX is not limited by bullets above.

In case if RIM makes smooth transition of SW development environment from legacy
Technology to QNX for all devices in portfolio, it gives RIM huge advantage to become a winner in long term. The process of SW Development environment transition from legacy platform to the new one is not easy and it is not quick process. Main hidden stopper here from my point of view is the mind of SW development community at RIM to understand advantages of new capabilities. The direct reuse of legacy code from old platform will not give good result.
Architect team need to apply appropriate approach to SW Architecture redesign to use advantages of new technologies.

There is one more technology acquired by RIM is new UI conception and execution environment from TAT. The size of this blog is limited to discuss this component and its advantages for new platform

No one from big players list can support the capabilities of QNX going forward. I mean Apple, Microsoft, Nokia, Samsung, Motorola etc. They missed this platform when selection.

The main task for RIM is to smartly map QNX capabilities to product portfolio creation in long term. If they do, than RIM will be a winner, no doubts!

What do you think?

P. S.

a) Teleca as service company has to help in eliminating the hidden stopper (defined above) to help to deploy new powerful RIM services based on QNX. It looks that the Android framework execution optimization on top of QNX is very promising thing for a start.

b) Apple will try to keep market and grow ecosystem but the company will do it different way which is not really innovation. It’s reuse of initial innovation and attempt to make stopper for competitors. Some indication is below.

Apple picks up key smart phone patent; cleared for Nortel bid reports that Apple has been granted a “long sought-after patent” which was said to be “so broad and far-reaching that the iPhone maker may be able to bully other smartphone manufacturers out of the US entirely.” While the details of the patent are complex, PCMag said that one legal source had said that it “essentially gives it ownership of the capacitive multitouch interface the company pioneered with its iPhone.” This could lead to lawsuits involving a range of smartphone vendors including HTC, Samsung, Motorola, RIM and Nokia. But it also cited Florian Mueller, an intellectual property activist, who said that an Apple action would only be successful if the alleged infringement implemented Apple’s patented technology wholesale – not if rivals are able to show demonstrable differences between user interfaces. The validity of the patent could also be challenged.
Separately, it was reported that the US Department of Justice has given approval to Apple to bid on the patent portfolio of failed networking giant Nortel Networks. The company is set to come up against tough competition for the intellectual property, which is set to take place next week, with Google, Ericsson and Intel also believed to be in the race.

c) Mobile devices core components were based on proprietary OSs. Since ~2005 Open Source conception started to change world here. But in reality Open Source conception didn’t introduce new technologies related to embedded systems such as configurability, reliability, real-time critical applications support, performance, fault tolerance. Open Source conception just introduced new technology to make money by Service companies to tailor “Free of cost” software for Manufactories to reach product quality in particular variant of (fragmented) platform.

So, the race is not over, it i more dynamic than ever and we will se innovation continue to be the competitive factor in this war.


  1. It's simple: replace the Linux kernel of Android 2.2 by the QNX kernel and you will get the best Android of all times :)

  2. Wonderful presentation on this blog. And technologies significantly affect human as well as other animal species ability to control and adapt to their natural environments.