Linked by Thom Holwerda on Thu 18th Nov 2004 10:19 UTC
QNX I think that everyone reading OSNews will have heard at least something about QNX. You can regard this article as an introduction, but also as a review, and as a "Is-QNX-Ready-For-The-Desktop? article". To start off, I put together a short explanation of the merits of using a microkernel. Let me start off by saying that QNX Software Systems (QSS) does not aim towards the desktop with their Neutrino RTOS.
Permalink for comment
To read all comments associated with this story, please click here.
@ flav
by pkj on Fri 19th Nov 2004 04:34 UTC

1. Photon in QNX4 is much more stable than 6. I saw numerous times that the whole QNX system froze. Without virtual consoles there's no way to recover except for a reboot.

The cause is that poorly written application (by students) will bombard the IPC channels and prevent all other things from communicating. So in other words he microkernel can be an issue in itself. I have seen far too many hangs in recent days.

_Any_ application running in a tight loop at a piority higher then 10 will not let you use your teminal(s) which run(s) shell at priority 10. It is not an OS, it is "poorly written application" as you rightfully pointed out. The common practice is to run a shell session at a higher priority in order to be able to identify & slay "unfriendly" applications. So, the point is the OS does not hang actually.

2. QNX, being a RTOS, actually uses a simple O(1) scheduler. What it means is that, if multiple GUI applications are run the performance would start to go downhill much faster compared to other *NIX OS.

Care to elaborate on this?

3. On top of it all, security is never QNX's strong point. It's a development platform and can be easily hacked. For example, if the remote debug server is used, then any code that come in through remote debug would get root privilages, unless remote debug is run as a user process. In that latter case however, so many remote debug functions are disabled that it's almost useless.

You are mixing up security of a development and a production system. I recognize a problem when you run a lab _development_ QNX server where you are running a debug agent and, thus, this system can be hacked. But that's what firewalls for.