8 ms·
Real time task scheduling, a much better keyboard, an excellent multitasking UI, full push email support, a better web browser and better benchmarks, to name a
by kunai 14y ago
Real time task scheduling, a much better keyboard, an excellent multitasking UI, full push email support, a better web browser and better benchmarks, to name a few.
The reasons I listed above are directed at BB's biggest userbase: businesses. That doesn't mean that the average consumer won't be able to take advantage of these features, though. QNX is real-time. That is huge. The performance of the OS should be unmatched by both Android and iOS simply because of that. Also, the UI is clean and refreshing compared to the standard crop of boring, button-nav, clone gridmapped interfaces out there. Gestures are the future. We saw them with Ubuntu Phone, and we're seeing them in BB10 now, too.
There's a lot of potential here if you look beyond the tangible.
- garagemc2 14y ago"QNX is real-time. That is huge." Why? What's the benefit? P.S. I have a playbook if you can use examples from that (if it has RTOS)
- MattRogish 14y agoI'm interested in this, too. I interned at a software company back in the late 90s that ran on QNX (batch control software for concrete ready-mix plants) - so I have some exposure to QNX. It is a pretty interesting RTOS (the Neutrino microkernel was pretty neat, architecturally). QNX is cool and all, but what "huge" advantage does "real-time" have on multi-core mobile devices? I also have a PlayBook somewhere (got it for free at a conference) and there was nothing particularly impressive about the multi-tasking that wasn't either obviated by OS design or otherwise simulated "good enough" in other tablet operating systems (the perennial real-time vs. preemptive multitasking argument). I'm not saying that there may be some interesting things that are made easier for BlackBerry due to a RTOS - but what "huge" things is a BlackBerry user going to see that, say, an iOS or Android user won't - solely due to a RTOS?
- fleitz 14y agoNo kidding humans don't care about 10ms jitter, missle guidance systems do. RTOS doesn't matter to humans.
- shawn-butler 14y agoSo for example, the android runtime operates at the same level as any other process. You will run android applications at the same "performance" level as native qnx apps. The benefits of the microkernel means crashes of an android runtime or the adobe AIR runtime have zero chance of bringing down other platform services, etc. You have to remember it was once planned to also offer a "legacy" runtime environment so that j2me/bb apps would continue to run alongside android apps. That obviously was lost (good riddance!) in the development cycle. The CPU scheduler is also quite different. The playbook represented a very "rush a beta product to market too fast" case study, so I wouldn't prejudge the smartphone builds of BB10 to the playbook experience. How does this translate into a "better" user experience is not clear to me either apart from being able to run repackaged android apps from day one. Design and flow is more important. That said, the multimedia latency that can be important in gaming on low-powered devices is significantly improved compared to the performance of the linux kernel. Finally, if an app ecosystem builds up around "sharing" information capabilities between running apps, the QNX IPC messaging is significantly better optimized than the IPC mechanism "borrowed" from BeOS that android uses. In theory, the advantages of the QNX microkernel to Blackberry isn't so much in that it will dramatically improve the smartphone experience per se, it is that QNX can be deployed/configured with less headache across more divergent platforms with different capabilities and hardware than the j2me platform, such as auto infotainment systems, factory floors, medical devices, etc. It would be quite possible to boot the device and "download" most of the necessary modules to run the hardware dynamically. Finally, I think the one aspect of QNX that hasn't really been exploited or discussed yet is its use as a distributed computing platform. It is rather easy to tie QNX "nodes" together and do IPC across the network by using TDP on qnet. [0] I could imagine for example using the processing power of the "nearby" qnx systems to power the apps running on my phone to save its battery. You could see swarms of phones contributing to enterprise problems in a distributed fashion. Want to access the camera on a phone in China, the code is the same as accessing the camera on your local phone, kind of like the Plan9 filesystem/protocol. Obviously BB10 has to be successful for anything grander and someone at BB has to share my product vision for it to take root. Sorry just rambling here, I'll stop. [0] http://www.qnx.com/developers/docs/6.3.2/neutrino/prog/qnet.html http://www.qnx.com/developers/docs/6.3.2/neutrino/prog/qnet....
- wvenable 14y agoYou said the BB10 can do so much more but then provided a list of fairly insignificant features and the mention of potential. If you were a sales person, you would have lost the sale. QNX being real-time has little to do with real world performance. While the Z10 does have good performance but it also has a pretty high clocked processor and double the RAM of competitor devices.
- kunai 14y agoIt may not be much of a boost in performance, but RTOS systems do enhance stability. First off, there are no memory leaks, so the performance of the phone won't degrade over time requiring a reboot as is often the case with my Nexus 4. The system will still stay just as fast as it was from day one without needing a reboot. Second, QNX is a microkernel in contrast to Android's monolithic style kernel or WP8 and iOS' hybrid kernel, so one process gone awry won't bring down the entire system. Again, a big stability boost, which is key in a business environment. Third, process scheduling is unmatched by any conventional OS compared to a real-time operating system, so multitasking is improved and is more rich compared to the crippled implementations that iOS and Android use. I'm sure the average Joe would appreciate speed, functionality, and stability, don't you think?
- wvenable 14y agoFirst of all, how does a real time kernel have anything to do with memory leaks in applications or services? It's not as if modern Linux or Windows kernels leak kernel memory. Secondly, unless you go all the way back to DOS or Mac classic you won't find an OS where a process can bring down the entire system. I can't remember the last time I had a full system crash on any OS on any device (that wasn't caused by faulty hardware). I haven't heard anything that suggests that a real-time kernel has any effect on the multitasking performance of a GUI operating system. It's not as if iOS or Android have crippled implementations, as you said. They just make a different trade off and they should, in fact, more suited to this kind of work.