QNX: The PlayBook OS

A year and a half ago RIM jumped on the opportunity to purchase an OS vendor called QNX (pronounced Que-NIX, like UNIX with a Q in front). RIM saw a growing gap between its BlackBerry OS and what Apple/Google were working on and realized it needed something new to effectively keep up with the joneses. The age old debate between build vs. buy kicked in to high gear and RIM took the route with less internal risk: acquire QNX.

QNX's Neutrino 6.5 OS is the basis of the BlackBerry Tablet OS running on the PlayBook. QNX features a very small (by modern standards) microkernel of around 100K lines of code. By comparison the modern day Linux kernel is around 14M lines of code. QNX argues that by limiting the scope of the kernel it can ensure greater stability and less vulnerability to bugs in the code. QNX is functionally a modern OS, however everything beyond the base kernel is supplied in the form of separate, self contained services. Even drivers are excluded from the microkernel.

QNX is, as a result, a very modular operating system. Additional features are added simply by bundling extra services, however for specific markets you don't incur any complexity or security penalty as unneeded services are simply turned off.

Because it's so modular, QNX has no issues being used in everything from the PlayBook to high end Cisco routers. Obviously the requirements of a tablet are very different from a router, so RIM actually implemented an updated version of QNX 6.5 into the PlayBook with some tablet specific features. The QNX team worked on improving media playback and GPU performance in QNX, features that will eventually make their way into QNX 6.6.

Another benefit of the modularity of QNX is that each service runs effectively sandboxed. A crash within a single service won't bring down the whole OS. Restarting a single crashed service can be done quickly. A small kernel should also be able to boot quicker, however the PlayBook itself has a longer boot time than Honeycomb because the entire OS image is validated using a crytographic hash on boot up. As a result of this image validation, the PlayBook will always boot into a known secure environment. Should the image validation fail, the PlayBook will typically install a previous known-good copy of the kernel stored on a separate partition.

Communication between services/processes happens via a structured messaging system. This is of course one of the benefits of a microkernel OS: inter process communication is usually quite good, because it has to be.

In QNX every task or thread has a priority. While a handful of priorities are reserved for system level events (to prevent an app from taking priority over refreshing the screen for example), everything else is defined by the caller. QNX argues that unlike in monolithic non-realtime OSes, task/thread priorities are nearly always respected here. Inevitably you'll have a number of tasks that have the same priority, and there the scheduler will just round robin between them. The one guarantee QNX offers is that any task with a higher priority will execute in accordance with that priority. This is ultimately what makes QNX a realtime OS.

Large monolithic OSes often give you the same promises, however QNX argues that they don't always hold true to them. There's always some system process that's interrupting things or a runaway task that prevents your screen from updating as quickly as you need it to. These days with hefty multi-core CPU architectures, hiding scheduling latency due to a system process interrupting something else isn't too difficult. On tablets/smartphones it's more of a problem given limited CPU resources, but ultimately it'll diminish there as well. There is arguably a power efficiency benefit here but at a high level that's a difficult thing to measure.

The QNX OS itself has been ported to everything from x86 to PowerPC. Although the PlayBook uses an ARM based OMAP 4430 today, it looks like RIM is pretty open to moving to other microarchitectures should the need arise.

File System

On the PlayBook RIM implements the latest version of the QNX file system. The setup supports 64-bit LBAs (effectively no limit on single file size given current NAND capacities) and 1K file names.

File system performance is difficult to measure at this point given that we're dealing with pretty low performance NAND as well in devices like the PlayBook.

A Functional Bezel TI's OMAP 4430
Comments Locked

77 Comments

View All Comments

  • legoman666 - Wednesday, April 13, 2011 - link

    No email client? Really? Is that a joke?
  • Ethaniel - Wednesday, April 13, 2011 - link

    For now it seems, but that's clearly a sample unit. All I keep reading is "needs tuning" and "needs optimization", ergo, it's not ready, and they're going to launch it anyway. Those updates will have to be lightning-fast. I don't want to pay 500 dollars to be a beta tester...
  • SimKill - Wednesday, April 13, 2011 - link

    I'm actually surprised. This is because my cousin in India said that his friend in Dubai already bought it and has it for quite some time. Do you think there might be a reason why they are purposely delaying the American release?
  • melgross - Thursday, April 14, 2011 - link

    Probably, someone is lying about it, or they've gotten some illegally obtained
    Re
    Reduction model much as what happened the Apple's iPhone 4.

    It's first being released in N. america, according to RIM.
  • vol7ron - Friday, April 15, 2011 - link

    Why does everyone want to price around Apple? The more I look at these devices, the more I'm likely to get the color-nook and put Droid on it. Surely the hardware would be lacking, but the functionality would still be ballpark.

    16GB for $500 is ridiculous. These base models need to be in the $250-300 range.
  • michael2k - Friday, April 15, 2011 - link

    Um, the raw materials for the iPad is about $260, meaning you can't expect to buy a 16gb tablet from any manufacturer, especially one with less buying power than Apple, for much less than $400 or so.

    From the iPad 2:
    Display is $127
    Flash is about $66 for 32gb, $35 for 16gb
    Case & Battery is about $60
    Mobo+Camera is about $60

    So for any 10" tablet the cost if they gave it away for free would be $282 or so. Your nook "cheaps out" by having a 7" screen, only 8gb storage, a slower CPU, no cameras, and a much smaller battery. It only gets 8 hours with wifi off, the iPad 2 gets 11 hours with wifi on!

    In other words you're only paying $180 worth of HW in the Nook, while the iPad gets you two 1GHz cores vs a 800MHz core, 11h of battery vs less than 8 hours, 10" and 1024x768 vs 7"@1024x600, 16gb vs 8gb, and of course, no guarantee of OS updates. You're complaint is ridiculous, actually, since almost no other manufacturer has been able to beat Apple on price yet except the Acer Iconia.
  • quiksilvr - Friday, April 15, 2011 - link

    As much as I despise Apple, I have to agree to an extent. Yes that price is quite hefty, but if Apple didn't have it's cult following, it would have easily been on sale for $399. But thanks to idiot consumers, they can bump it up a Benjamin.
  • michael2k - Friday, April 15, 2011 - link

    And no one else can order in vast enough quantities to hit the $399 price.
  • mcnabney - Friday, April 15, 2011 - link

    I am starting to doubt the iSupply numbers you quoted.

    They price the very nice 9.7" IPS screen that Apple uses at $129 while the clearly inferior non-IPS screen the XOOM uses at $140. Their memory prices are also highly suspect, clinging to $2/GB for what are still really small drives compared where higher performing SSDs already are. I would guess that NAND prices for tablets are under $1/GB wholesale and in quantity.
  • michael2k - Friday, April 15, 2011 - link

    Apple orders literally 2m 9.7" IPS screens a month, probably 40m this year alone. That gives them bulk purchasing power no one else has except the manufacturer of said screens.

    Motorola has to pay market prices, while Apple can literally buy an entire factory's output. http://www.isuppli.com/Display-Materials-and-Syste...

    It doesn't help that the Japanese earthquake halted LCD production at major plants, either!

    As for SSD chips, Apple is paying a premium to get density. The low end iPad has only a single SSD 16GB chip. The mid range iPad has one or two, and the high end has two 32GB chips. As soon as prices are good or capacity is good, I'm sure Apple will use a single 32gb chip on the low end, two 32gb chips for the middle, and 2 64gb chips on the high end.

Log in

Don't have an account? Sign up now