QNX "Opens" Source Code
Arista writes "QNX has announced that effective immediately, the company will open the source code to its QNX embedded, RTOS, microkernel operating system. From the press release: "Effective immediately, QNX will make source code for its award-winning, microkernel-based OS available for free download. The first source release includes the code to the QNX Neutrino microkernel, the base C library, and a variety of board support packages for popular embedded and computing hardware." OSNews features an interview with the CEO of QNX, Dan Dodge, on this announcement."
These are the guys that released that really cool Desktop GUI + PPP stack + web browser and OS on a single floppy disk back in the 90s. I remember also reading that the Photon GUI would let you pass applications between computers through a dock on the side of the screen. Neat stuff.
Cool!
This is huge news. One of the most popular paper ballot systems, the ES&S model 100 optical scan runs on QNX. this means it is now theoretically possible that ES&S could go open source if they wanted to.
Some drink at the fountain of knowledge. Others just gargle.
Don't they know that it's standard wisdom on Slashdot that microkernels can't work? What's wrong with these guys?!!! Myself, I'm still waiting for GNU/Hurd :)
Any chance of finding out which 3 licences you can choose from without regestering to yet another website?
QNX is real time isn't it? That's supposed to be the one application where you want a microkernel.
And it's not that they can't work, it's just for general purpose, they tend to be slow.
QNX has some of the best real-time features of any OS and its message passing architecture is reliable and pretty simple to use. The main problem so far was its price, lack of source and overall lack of applications. This will likely change quickly if it is open-sourced. I can see it become a serious contender to the various complex and poorly documented patches to turn Linux into a real-time system. Excellent news indeed.
Non-Linux Penguins ?
I didn't see it in the article, but what license are they releasing this under I wonder. Will be one of the standard ones or will it be YAOSL (Yet another open source license)?
I've been trying to get the non-commercial key from them for Momentics, but it doesn't seem like they plan on sending it to me anytime soon. Anyone else having any luck?
"I think an etch-a-sketch with an ethernet port would beat IE7 in web standards compliance."
I had a look on the linked site and I don't see any mention of what they've released this under. I tried to see if it was in a file in the source tree, but... I get a "permission denied" message going there.
"It's "open source" only for non commercial use - which is not "open source" at all."
Well considering the changes in the GPL and all the talk here. I'd say that that's plenty open enough.
Myself, I'm still waiting for GNU/Hurd
Oh right, I heard Duke Nukem forever requires it.
Dan Hildebrand is rolling in his grave.
I guess it has no more value if they are going to give it away. It's dead in the sense that OS/2 and CP/M are dead.
BeOS had a microkernel, and it was not slow.
Sheesh, this is no better than Microsoft's "Shared Source"! They restrict commercial development, just like Microsoft.
This is Source Available software, NOT Open Source Software. You don't have all the freedoms available to you that are described by the Open Source Definition.
Don't piss off The Angry Economist
I've done a few embedded linux projects over the years - we would have loved to run QNX, as I was exposed to it in university and enjoyed it, very robust, supported etc - but the licensing fees are killer. The offered advantages, at least in the applications we've worked in make it a no brainer to go embedded linux.
Access to QNX source code is free, but commercial deployments of QNX Neutrino runtime components still require royalties, and commercial developers will continue to pay for QNX Momentics® development seats.
Looks like I'll be keeping my investment in embedded linux environments. Royalty vs. no royalty with same functionality, I'll tell you who wins every time. Linux keeps getting better, too.
..don't panic
Its good news for me. I played around with QNX (around v6.1 I think) and was really impressed by the speed it could run on older machines. If I had a single CD install that could browse files, play MPS and run firefix then I would install in without a seconds thought. I remember being vaguely unimpressed with the license and installing Mandrake instead (hey, it was a few years ago..)
For a fuller office experience Ubuntu would win because of the application support, but for simple client Net/Music use in places like a lounge or bedroom QNX has got to be a good option.
The title of the press release is "QNX Publishes Neutrino Source Code and Opens Development Process". Arista, on the other hand, didn't seem to mind mangling this in order to get this article posted to Slashdot.
I imagine this kind of thing might be why Bruce Perens said way back in 1999 that it's time to talk about "free software" again.
http://outcampaign.org/
I don't remember seeing that, though I think I remember seeing that they have the same reslease date...
It's a shame that QNX won't be released under a more free licence, as it really is a nice product. It has one massive advantage -- it's very small and slick -- it'll run on anything. It'll make a useful side-tool for development (most likely for compatibility testing), but it won't be able to compete with GNU/Linux at any real level if it ain't GPL'd.
Minix 3
It looks very interesting to me.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
You need licenses to do things like release your own version, and that puts it in the same ballpark as Microsoft's shared source initiative.
Sometimes boldness is in fashion. Sometimes only the brave will be bold.
I used to program it when it wasn't a POSIX compliant kernel but some weird ass vaguely Unix-like thing. The compiler was terrible, the tools were terrible, the OpenLook-like UI was terrible but it was still a lot more liberating than programming Windows or DOS. You could do some very whacky things since it didn't really matter too much if you were talking to a process or filesystem on your own machine or somewhere else on a token ring. The real time and multitasking performance was generally excellent. I remember wasting a good portion of work just trying to port Unix and DOS tools like MicroEMACS over to it to make the environment more tolerable. In some ways the switch to Posix probably killed some of the charm QNX used to have - it was like trying to build a kit car without all the pieces. Nowadays it's just another *nix clone, even if it still focuses on the realtime market.
QNX has a viable business model just selling the test suite and certification package for the OS, without selling the OS package itself (although they will still make a killing licensing it for commercial use). They have an established base of customers in the embedded systems market who need to prove to regulatory bodies that the OS will do what it claims to do - and these documents would be worth every penny. This is an excellent way to take advantage of open source licensing.
I find the history of QNX very frustrating. When I first heard of it in the mid 80s, it was advertised as a simple Unix-like OS with very low hardware requirements. It was network-aware, supported distributed computing, and had a nice microkernel architecture.
But the most important thing was that it was a real OS, with the ability to multitask and to effectively isolate hardware from software. Contrast this with MS-DOS 3.0, which had only the most primitve, kludgy excuse for background processing. (Patterson knew zilch about os design when he set out to clone CP/M; it never occurred to him that OS code needed to be reentrant. And MS-DOS did a really lousy job of isolating hardware from software. Ironically, this fuckup assured lockin of the IBM-compatible/PC combination: software written for this platform was essential impossible to port to other platforms.
What was particularly tantalizing was that QNX claimed to run well even on very limited hardware — even 8088 systems were said to run robustly. And it shared some key features with CTOS an first-rate OS that was then dying off, due to its dependence on proprietary hardware.
The problem with QNX was that commercial license fees were very high; that's why I never played with it. It did become popular at universities (cheap academic licenses) and among certain kinds of embedded application developers (because of its nice feature set and minimal hardware requirements. I'm told that by the late 80s, most video stores used POS systems based on QNX.
Then MS-DOS/Windows started grabbing more and more of the market and QNX was forced to specialize. So for a long time now they've advertised themselves as a real-time operating system. And yes, their real-time features are very good — but they're just one part of a really good general-purpose OS.
Now, much too late to do me any good, there's an open-source version of QNX. I wish the QNX OSS community well, but there's just no place for it in the world I work in. Hopefully, embedded application developers will keep QNX alive. But I'll always be sad that QNX never found a following among common PC users — which it surely would have if the marketplace were driven by technical excellence instead of various sordid realities. This is one of the great lost opportunities in computing history. And should be a lesson to Linux advocates who think they can easily displace Microsoft.
Java was open sourced under the GPLv2.
http://www.sun.com/software/opensource/java/faq.jsp#g1
Now I can finally run my I-Opener with its native OS!
The I-Opener FAQ is at http://fastolfe.net/2006/iopener/faq if you don't remember the device. It had a very high "cool factor" for its time.
Yeah that may sound trollish, but there are several companies that are doing the open source thing because they are not doing so well.
I'm not saying this is a bad thing, I'm just saying QNX is not doing as well as I think they would like to.
Only 'flamers' flame!
Does slashdot hate my posts?
Axl's using it to help him write his "Chinese Democracy" album - due out any day now...
Truth, Justice. Or the American Way.
Let me know when Minix actually supports virtual memory pages. Last I looked it was using segments, which aside from being clumsy, aren't very portable. There are plenty of other more innovative OS's that are much further along than Minix. You could do worse than to look at L4 and Coyotos. You could also do worse than to look at Minix, certainly, but just don't stop there.
But the important point is that we could all examine the voting software for bugs.
Ben Hocking
Need a professional organizer?
But the important point is that we could all examine the voting software for undocumented features.
Ben Hocking
Need a professional organizer?
8 of 13 people found this answer helpful. Did you?
Get it through your thick heads you fuckwads. We don't CARE about "open source". Only free (as in libre) software is what humanity wants, needs and desires strongly. The fact that you can look at the QNX source but can't really do anything with it makes this a complete non-starter. I don't give a rat's ass about making money. The only thing I care about (and you should too) is making the world a better place with technology, for free, for everyone regardless of race, age, gender, or religion. I want the Muslims to have access to computer technology and software completely free of charge just as much as I think the Christians, Buddhists, Raelians, and the like should. (My only exception is Scientologists because they are not created equal) NO SOFTWARE FOR PROFIT!!! Only FREE software! Who's with me!!!?
Cool, that was the one thing that was missing in the past with the free version. All i ever found was ix86. Anything else was $.
---- Booth was a patriot ----
Well they do make most of their money off royalties and annual dev kits fees. I think the idea is to get QNX into the academic arena, where you can warp the minds of future engineers and pick up some market share.
“Common sense is not so common.” — Voltaire
If you hooked a terminate-stay-resident program onto the clock interrupt and used that to page programs in and out, the same way the 4DOS program paged in/out applications on a keystroke, you could have limited multitasking on DOS. However, as noted, nothing was protected, so essentially nothing was safe, but it was possible to use this sort of technique to reduce the limitations of DOS.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
I think you've got it backwards. Everyone here is a believer in RMS and RMS is a believer in microkernels. Ergo, microkernels are kewl.
Perhaps you're thinking of the Tanenbaum-Torvalds flamefest, where Tanenbaum argued that the Linux kernel was obsolete from day 1, because it was monolithic. So if you believe that Linus is God (or at least the Flying Spaghetti Monster), then you hate microkernels. On the other hand, monolithic kernels are old technology and microkernels are (relatively) new technology; so no self-respecting geek will have anything to do with monolithic kernels or other paleolithic technology!
It's a very confusing problem. Of course, you can always cop out and say, "I use what works." But what's the fun of that?
Now Linux kernel developers can use code from QNX to make a RTOS that runs Linux apps and the smaller (but still valuable) library of QNX apps. And maybe port Linux (or the new combo) to HW that now runs QNX but not Linux.
It comes too late to finally get Linux working on the Geode-based 3Com "Ergo Audrey" I had such hopes for. But the HW was already obsolete. Maybe now a QNX/Linux OS will get such a promising "home GUI" to work with all the apps that would make it such a neat terminal.
--
make install -not war
The problem is, QNX management has said that before:
"The new QNX initiative consists of several key elements . . .
That's from a press release back in 2000.
Last time, the free version of QNX stayed around just long enough that free software developers ported their major packages to QNX. Then QNX management yanked it away.
Despite the new press releases, the QNX CVS source repository hasn't been updated in six years.
He is implying that the GPLv3 has restrictions added that make it impractical to use it for commercial projects.
“Common sense is not so common.” — Voltaire
...dig that old iOpener out of the basement and, wait, I don't have a basement, damn, I sold the iOpener to some kid, maybe I can score a v5 on eBay, ACK! Only 3, and they obviously don't know which rev they have... dammit, I'm gonna have to work on this, l8r, much, !sleep. Must have.
deleting the extra space after periods so i can stay relevant, yeah.
It's not just unportable outside the x86 family, x86-64 doesn't support segmented addressing, so MINIX 3 will always be a 32-bit OS. For something that's designed as a teaching OS, it has some horrendously unreadable code. Linux is the only kernel I've seen that's worse.
L4 is not a kernel, it's a specification. There are a few nice implementations, but synchronous message passing is just a bad idea. It gives you the worst of both worlds.
I haven't been following Coyotos much since it stopped being EROS. I'm not a huge fan of the capabilities community in general though. Their solution to the problem 'security is too hard for end users to understand well enough to get right' seems to be 'let's make it more complicated.'
If you want an interesting, widely deployed, third generation microkernel, you might want to take a look at Xen. Xen 3.1 is a clean multi-server microkernel design. The fact that the original author's PhD was in lockless data structures really shows in the design.
I am TheRaven on Soylent News
This article tries to make you believe it will be release under an open source license, but apparently, it will be nothing more than a proprietary license that lets you look at the source code.
It looks like a lame marketing campaign to get people to contribute for free to their proprietary project.
wtf.n0x.org
And I also heard that it's coded in Perl 6
"And this is why Free Software advocates laugh at people who say 'Open Source' is not ambiguous."
RMS is the king of ambiguity. That's why the phrases "free as in free" and "free as in beer" had to be invented. It should have been called "Freedom Software", but that doesn't have quite the marketing value that "Free Software" does.
"Aye, occasionally an AC does post something worthy after all. I have really had it as well with the "It's not GPL, so it's not really open source" nonsense."*
Sounds similar to what Troll tech did with Qt. And look at the noise that was made back then.
*For a real laugh, observe them when there's an Apache vs IIS discussion. Fair weather friends indeed.
Whoa, those jokes are still funny.
Nah, round here everyone is a dirty, MacOSX-using, dope-smoking, "web designer" slacker.
"... and overall lack of applications."
It's an embedded OS: It's your job to write the application.
This is not a surprise really. VxWorks the other big embedded OS opened it source a couple of years ago. This was not long after listening to the CEO of Vxworks telling us the vxworks source code was the crown jewels. Well some crown jewels that was.
The truth is all embedded OS have been forced to do this by the rise of linux in the embedded world. Also believe me the difference is huge when you have the source. Wierd behavior and unexplained bugs suddenly become transparent when you can dig into the source. In the end though it doesn't really hurt the vendor since you still pay them for support and development tools.
Choose your allies carefully, it is highly unlikely you will be held accountable for the actions of your enemies
I'll believe it when I can click download. So where is the downnload page for QNX ?
Now that is hard to accept, since very few Slashdotters seem to know about the <blockquote> tag.
As soon as XEN is ported to QNX, you can have the best of both worlds. QNX realtime OS at dom0 and Linux at domU.
How many successful microkernel based systems are there? One. Only QNX has managed to be successful with a true microkernel architecture.
Now that the source code is open, it would be nice to find out how they got out a robust microkernel years ago while GNU is still struggling with HURD a decade after Stallman belittled Torvalds by saying the kernel was the easiest part of an OS to write.
Don't blame me, I didn't vote for either of them!
A lot of systems are based on QNX, such as the new Cisco operating system, IOS-XR.
I'm happy to see a RTOS in the open source family !
When you have to certify a computer to "Design level" as in DO178-B. You need to have the source code for the OS to be able to prove certain characteristics. What this does is remove the negotiation of the cost for the source from the equation. Though this means the company that uses the product will have to certify the OS themselves.
I work with a metrology company, and one of our more complicated products uses QNX on the embedded system. A few months ago I was trying to find a workaround for a difficult troubleshooting scenario (that we encounter relatively often). Having access to the source-code should make the job I was trying to do at least possible, if not "easy" (compared to my options before). We pay for our licenses of course, so all this means is we have better options to improve integration!
1. "Open" source code of PROPRIETARY_PRODUCT for all to see <----- you are here ...
2. Start making vague claims that REAL_OPEN_SOURCE_PROJECT includes code of PROPRIETARY_PRODUCT
3. Start program where REAL_OPEN_SOURCE_PROJECT users can license PROPRIETARY_PRODUCT "IP" for $699
4. Select end-users of REAL_OPEN_SOURCE_PROJECT with deep pockets to sue
5.
6. Profit!
Which means the GPL, (Gay Penguin Lovers,) -license is destructive; it straight out "forbids" quality, by way of its shitty terms, so that anyone with a quality (I.E. non brown) application get scared right off, and seek for saner paths.
A horse can't be sick, you know, even if he wants to.
My company has several dozen computers running QNX Windows 4.25 as the embedded OS under our control software. I have to work with it every single day. It's not pretty but it works. I don't know that the OS has ever actually failed. The hard drives and motherboards give out before the software. I personally think opensource on this is more of a win for the consumers, because the developers just don't care, any more.
I will also admit that all of our new systems run Windows XP Embedded. Yeah, I designed and built a better system. That was me.
The OK Labs approach is interesting too and they specifically claim that their approach is secure. The latter paper has good historical background on the history of microkernels (which you may already be aware of) and mentions some that I hadn't heard of including IntegrityOS which is supposedly widely deployed in the military. Worth a read.
The reason everyone and their brother doesn't have a viable microkernel, is that microkernels are hard to write (and get good performance). Writing a poorly performing microkernel is easy, and that's why they have the reputation of being slow.
There is something unstated here though; while writing a monolithic kernel is easy, keeping it running (maintaining it) is hard (because of the lack of protection).
writing maintaining
mono easy hard
micro hard easy
The reason most computer scientists prefer microkernels is that they are taught to prefer s/w architectures that have the lowest cost over time, and microkernels clearly win in the long term. Unfortunately, as everyone knows, outside of academia, decisions are rarely made with the long-term in mind.