Talk:QNX
![]() | This article is rated C-class on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||||||||||||
|
The new "Technology" section
editAdded "Technology" section, explaining briefly how QNX manages to have a small microkernel that's actually useful. There are two subtle design decisions that really made QNX work, but they're hidden deep in QNX technical literature and not well known. I've never seen them mentioned in academic papers on microkernels, including the literature on Mach and Minix 3, so it's nice to get them into Wikipedia. --Nagle 06:36, 6 March 2006 (UTC)
- Thanks!
Most successful microkernel operating system?
editIsn't Mac OS X the most succesful microkernel-based OS nowadays? Can someone provide sales figures? Qwertyus 15:55, 4 May 2006 (UTC)
- MacOS X isn't a microkernel. It's based on an earlier version of Mach than the pure microkernel version. Underneath, it's really BSD with Mach extensions. Networking, file systems, etc. are in the MacOS kernel. The pure microkernel version of Mach was never very successful. One of the lessons of the Mach effort is that trying to take a big kernel and cut it down to a microkernel is the wrong way to go at the problem. --John Nagle 16:48, 4 May 2006 (UTC)
Uncited performance claims
edit"Despite these efforts, direct comparisons between QNX being one of the fastest microkernel systems available and monolithic systems like Linux indicate that the microkernel concept cannot provide the same performance." was added by 62.214.228.219 (talk · contribs). and "QNX is addressing some of these issues by limiting the use of IRQ usage and use hardware polling where possible to decrease the number of task switches." doesn't seem quite right. Without a cite, there's an NPOV issue. Does anyone have a cite for that? --John Nagle 01:15, 31 May 2006 (UTC)
I've just added a "citation needed" tag.--BMF81 00:59, 4 September 2006 (UTC)
I would suggest deleting these claims, and only allow reinsertion if backup data is provided. I know at least one report that rather suggests that QNX outperforms the Linux kernel in a lot of ways, see QNX vs. RedHat Embedded Linux. This is from the QNX website (good PR as QNX wins), but written by a company called Dedicated Systems. I do not know whether they are somehow connected to Harman, but other reports from them seem rather balanced to me (e.g. the comparison between QNX, Windows CE and VxWorks, where advantages and drawbacks are listed for each OS). The second claim of this user ("even the most effective message passing cannot provide the performance to handle extreme interrupt load") is plain nonsense, as QNX is especially optimized to cope with high interrupt loads (like every RTOS), thus outperforming general-purpose operating systems by far. Comparing a general-purpose OS like Linux and an RTOS in this sector is senseless, by the way, as Linux should and does have other goals. On a side note: I use QNX for development at my university, and find its performance astounding, compared to Linux, and even to Windows XP. --Uwe Salomon, 16:58, 27 October 2006 (GMT+01)
- I deleted the whole paragraph. There has been no verification of the claims, and nobody has argued here on the talk page that those claims should stay in. 62.214.228.219 also never even specified precisely what was meant by "performance". If someone feels like rewriting the claims to better fit into the article, and can provide some reference to back them up, I for one don't have any problems with it though. -- magetoo 16:33, 21 January 2007 (UTC)
should QNX be part of the Ottawa project?
editUnix?
editThe "Unix-like operating system" template at the bottom of the page lists QNX as a Unix-like system. But the Infobox says "OS family: Not Applicable". Is QNX an Unix-like operating system? I am confused...
- QNX has a UNIX-like API (QNX 6 is POSIX-compliant), and most UNIX or Linux text-mode programs will work on QNX if recompiled, but underneath, the system is totally different. So that info is essentially correct. --John Nagle 16:28, 3 September 2006 (UTC)
The main screenshot
editThat isn't exactly what the default desktop looks like. The background's not blank, it's a picture. The site where the picture's from states:
Note: I omitted the default background image to reduce the file size of my screen shots
—The preceding unsigned comment was added by 24.58.143.68 (talk) 12:20, 9 April 2007 (UTC).
"open source for non-commercial use"
edit"open source for non-commercial use" as the intro states is an oxymoron. What are the real license terms for QNX these days? --Ævar Arnfjörð Bjarmason 16:21, 12 September 2007 (UTC)
- Agreed. It sounds like they've published the source code, but under a non-commercial license, which does not conform to the Open Source Definition. I suggest change "open source" to "source available for non-commercial use". fraggle 08:17, 13 September 2007 (UTC)
Hmm, I wouldn't call it "open source", it seems more like "shared source" to me, considering the restrictions on use it has. Seems closer to what RISC OS Open are doing these days. VMlemon (talk) 09:34, 12 June 2008 (UTC)
What the current page fails to really identify is that QNX has two different generations in the wild. QNX 4 (4.25, 4.24, etc), and the newer Neutrino. There are some major differences between the two. QNX4 most certainly isn't (at least wasn't), open source in any way.
There is some discussion about performance, etc. What I can tell you from running deployments of up to 40 nodes (QNX4), is it really depends on the code and the network especially where latency becomes an issue. You do NOT want to use cheap network gear, or media converters despite what your IT says.
Regarding stability, that is kind of a mixed bag. QNX's proprietary "qnet" is especially flaky as nodes time out either due to failed hardware, or whatnot. QNX's own par32, and ser32 drivers became the bane of my existence because they were unstable. RTOS's are nice until you start dealing with priorities.
As an example, under certain conditions the par32 (par as in, parallel, aka printer) driver would spin (eat cpu) if the printer was offline. Since it is a RTOS and the driver was typically at a higher priority then user processes, it would cause the console to studder.
Having said that, it was truly awesome to work with. Being able to refer to remote devices as if they were local and having REAL, hard control over the OS. Typing //32/dev/fd0 from node1 for example would access the floppy drive of node32 as if it were local. If you don't understand the beauty in that, you'll never understand QNX.
QNX4's major problem is the lack of support for _newer_ hardware and dealing with the fact that quality hardware is becoming rare. For example, many motherboards were returned or blacklisted internally because they lacked stable timer chips.
Chocolate Chip Cookies
editI remember that in the late 1990s QNX would ship with a bag of President's Choice chocolate chip cookies to eat while it installed. A cursory net search doesn't turn up any supporting evidence of this, and I'm hesitant to add this detail based on personal experience alone. Can somebody add a reference for this? 99.233.162.32 (talk) 12:04, 8 July 2009 (UTC)
Initial release 1982, is this correct ?
editAccording to http://www.qnx.com/developers/docs/6.4.1/neutrino/sys_arch/intro.html "The first version of the QNX OS was shipped in 1981.". I am 99% sure that there should be 1981. Gszpetkowski (talk) 18:59, 5 January 2010 (UTC)
This is most certainly not correct. The IBM PC was released in 1986. ref: https://en.wikipedia.org/wiki/IBM_Personal_Computer. I recall purchasing one during the first few months of it's release, and wasting endless hours trying to do something serious with BASIC, Forth and a 'C' compiler that never understood how to deal with DOS new line characters. About 6 months after purchasing the computer I ran into an add in PC Magazine (or was it BYTE) advertising QNX. I purchased my first version, listed as V .43 from the companies marketer Sid Gehraty (I'm sure this is spelled wrong) from his home in South San Francisco. It was probably another 6 months before Version 1.0 was released. The concept of "first version" and "shipped" is probably a little vague here. I suspect the 1981 date may have crept in as when Dan and Gordon started work on QNX. — Preceding unsigned comment added by 198.144.201.142 (talk) 11:58, 6 August 2013 (UTC)
- "The IBM PC was released in 1986." According to your own link, the IBM PC was released in 1981, not 1986. Claidheamhmor (talk) 10:04, 7 August 2013 (UTC)
The IBM PC was released in August 1981, and I bought an IBM PC here in Canada in November-December 1981. So, definitely 1981. HWSager (talk) 20:37, 12 November 2017 (UTC)
QNX Release History
editHello. I am compiling information regarding QNX release history at User:Trollaxor/QNX_release_history. It seems that QSS does not keep old press releases (or may never have issued any) and, due to the marginal nature of this operating system, it receives very little attention in mainstream press. I therefore ask that anyone with sources for release dates—not only press releases, but also reports from reputable magazines, web sites, QNX doucmentation, etc.—either edit the my list or leave a message for me at my talk page. Thank you. Trollaxor (talk) 06:07, 9 May 2010 (UTC)
If you can find access to 1986-1987 copies of PC Magazine or BYTE, somewhere in there you will find the original QNX ad.
QNX Name History
editI remember back when QNX was called QUINX and there was a naming dispute in using the word UNIX in their product/Company name. It wasn't named QUNIX for very long before the name change to QNX. I'm sure I could find some reference to it in my old BYTE magazines. Google now has the entire print editions of PC Magazine online. The very first issue has an ad for QUINX on page 69. — Preceding unsigned comment added by Jaytaylormn (talk • contribs) 01:39, 3 October 2011 (UTC)
QNX performance
editIn the late 1980s I was the sole software provider for a company (optimistically) called "Data Check International." A Data Check system had a central computer, an IBM PC or clone, with a number of terminals for data entry and editing, and a connection for one or more phone lines on which merchants sent queries on customers by means of CATs (credit authorization terminals--those now-ubiquitous credit/debit card scanners). Early versions of the Data Check software on MS-DOS and UNIX did not provide stable operation. In 1988 I converted the software to run on QNX 2.1, and within a few months I had a stable software system. The big advantage of QNX, besides its stability, was that it was networking and multi-tasking right out of the box. And it was fast--very fast. I still have my QNX C Compiler manual, which has "© 1982,1988 Quantum Software Systems Ltd." on the title page verso. (That doesn't mean that QNX came out in 1982, only that the C Compiler did.) In 1991 I worked for six months in Phoenix with a software team developing the "Roomfinder III" system for Ramada Inns Inc. The Roomfinder software was to run at each "property" (their term for motels, a "forbidden" word for us to use), communicating with a central server on a mainframe. Management had selected QNX as the best OS to use for this software. From what I saw, it worked beautifully. I haven't used QNX for some 20 years now (I stopped programming when everything went GUI), but I still remember it as the best OS I ever used. I never saw QNX 2.1 crash--not even once. Gdthayer (talk) 22:19, 8 December 2011 (UTC)
Unix-like
editSince QNX is not UNIX®-certified we know it is not UNIX. How do we know it is Unix-like? User:ScotXWt@lk 20:47, 3 July 2014 (UTC)
- The easy answer is, “QNX is considered *nix-like because the aspies editing this entry say it is.” But, when you ignore the technobabble bullying and dig into the history of the product and the technology itself, QNX is not obviously *nix-like at all.
- For example, the QNX microkernel is nothing at all like traditional monolithic *nix kernels. Instead, it’s mostly a messaging system between discrete processes. It’s a real-life example of minimal microkernel architecture that manages to work. So QNX isn’t *nix-like in the sense of its kernel.
- Likewise with QNX’s user space. QNX only started to include *nix utilities in late 2000, drawing on NetBSD 1.4 in an approach like Apple’s use of FreeBSD. Before that, there were minimal, homemade utilities that offered functionality similar to many *nix utilities, but these were not genetically related to traditional *nix utilities and weren’t meant to replace them from, say, a workalike GNU perspective. From a 30,000 foot view, QNX only had a *nix-like user space starting in 2000, and even then it was imported from another *nix-like operating system. Overall, kind of *nix-like but not inherently so.
- And then we need to look at QNX end-use goals. For instance, traditional *nix systems started out as multi-user systems with a rich user space that included a development environment. Today, we see *nix deployed in over 500 million mobile devices if you include all iOS and OS X Apple device shipments doing all kinds of general-use and high-end production work. (Actually, that’s proper UNIX® there, since Apple paid for the official certification from the Open Group.) Is QNX approaching either one of these arenas? Hardly.
- Instead, QNX is supposed to run on minimal hardware, provide IV drips in real time to sick patients, and shut the fuck up. Not respond to your clicks on internet web pages or act responsive when your shitty 4 GB system is paging out like mad while your WoW idles and you watch shitty television programs on Netflix and let Facebook spy on you from the ten different tabs you have running in the background.
- So QNX’s end-use goals aren’t traditionally *nix-like, though it can be argued that *nix-like end-use goals can mean anything nowadays. Well, sorry, but I don’t put running on fucking Casio watches and dripping drugs into people at a hospital to be any sort of traditional or new-fangled *nix end-use.
- So, overall, QNX doesn’t seem to be *nix-like. Perhaps we could say that QNX is *nix-like despite itself, or approaches *nix-like functionality in certain areas or for certain end-uses. It’s obvious that QNX was never *nix, though, and that should make the answer to your initial question clear.
- The real and remaining question is, “does this matter to the aspie editors who try to hyper-categorize everything while the rest of the world is busy getting actual work done?” The answer to that question is a resounding hell no, and that is the exact reason why Jimmy Wales is staring at me right now, cockeyed, asking for donations to keep this shit-boat afloat.
CarPlay listed in See Also
editIt seems odd that car play is listed in the See Also section, is there a reason for this? 9point6 (talk) 15:55, 12 February 2015 (UTC)
- ah, I missed that apparently CarPlay typically runs as an application on car manufacturer's QNX based operating systems 9point6 (talk) 15:59, 12 February 2015 (UTC)