Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
Operating Systems Software

Interview With Chris McKillop of QNX 22

Sheepish writes "OSNews features an interview with Chris McKillop, software engineer of QNX Software Systems. Chris, the most outspoken and 'visible' QNX employee in the QNX community, is discussing about performance differences between RT and monolithic kernels, the difficulties of pitching a new OS to the world, the Linux and Microsoft threat to QNX in the embedded space, QNX's Momentics desktop operating system and more."
This discussion has been archived. No new comments can be posted.

Interview With Chris McKillop of QNX

Comments Filter:
  • by qnx6 ( 681751 ) on Monday July 14, 2003 @12:56AM (#6431996)
    If you read the QNX community site [], you will see that cdm is very active in the forums, answering questions from QNX users. For the other QNX employees that do "say" something, the number of posts are far behind. cdm is also "full time" on the #qnx irc channel at Drop by if you wanna say hi to him :)
  • It's QNX Neutrino (Score:5, Informative)

    by variable ( 13935 ) on Monday July 14, 2003 @12:57AM (#6431999) Homepage
    QNX Momentics is our development toolset - it exists on Windows, Solaris and Neutrino. The "desktop" OS is actually QNX Neutrino.

    • I love QNX, but I've never understood why they wont write a swapper for it. Maybe they have in the last few years, I haven't kept up. They had an almost religious statement that QNX should never be a desktop system, so that's why it shouldn't swap.

      It would be so nice to see the real time priority system they use applied to a swap server process.

      "memory's cheap"

  • That's simple (Score:3, Insightful)

    by Anonymous Coward on Monday July 14, 2003 @03:28PM (#6436294)
    It's a real time OS. It has hard realtime requirements. Lets say the program that is supposed to respond to an interrupt is swapped out. Then the hard realtime requirement has to include the maximum latency for seeking the disk head, the maximum rotational delay, plus all the regular overhead.

    Right now, it's a context switch. They have a well measured, well defined maximum time it takes to do a context switch. Depends on the machine, but it's absolutely consistant, and documented what the worst case is, on the 386's we used for an embedded system it was well under 10 milliseconds (the regular quantum of the QNX 4.2).

    I want to say it was on the order of microseconds. It was very, very fast.

    The other problem, is that swapping, and virtual memory create a whole new realm of non-repeatable test cases. It's complicates the OS, and the testing of the groups of applications a great deal. QNX is supposed to run in pace makers, the NASA shuttles, fuel injections systems, and all kinds of other places, where "Opps, guess we never hit that case in testing, call the Q/A team, or e-mail the mailing list to find a resolution", isn't acceptable. QNX is incredibly simple, well defined, and acts the same way all the time. That's the beauty of it. Swap is a horrible abberation, that greatly complicates the systems, and introduces whole new classes of bugs, races, priority inversions. Just all kinds of nastyness, which is completely acceptable on a desktop OS, and not at all acceptable on a RTOS.


  • QNX is a way cool OS. But back in the 80s QNX blew its chance to be the PC OS, mainly by overpricing licenses. I'll never forgive them for that!
  • I just have to poke at this hornet nest statement from the article...

    "...Beyond that, I'm not at liberty to say..."

    Not at liberty eh? Sounds like you need some free software []. >:^}

"Well, it don't make the sun shine, but at least it don't deepen the shit." -- Straiter Empy, in _Riddley_Walker_ by Russell Hoban