Slashdot Mirror


QNX RealTime Platform Preview

Mike Bouma writes "Since the QNX RtP will be free for personal use this late-september, this BeNews preview will see how QNX RtP compares to BeOS and to free Linux systems. QSSL is a member of the Phoenix Platform Consortium which goal is to produce an Amiga-like successor OS. QNXStart.com will be a starting point for the QNX RtP community and is first in a series of Phoenix partner websites."

33 of 113 comments (clear)

  1. Re:Synthesizer OS? by Christopher+Thomas · · Score: 2

    Which would make a better OS for a software synthesizer:

    The simple answer: Whichever platform has the software already existing for it (at least if you need to use it in the near future).

    The ideal situation would seem to be an OS that has the graphical capability to present an interface for MAKING instruments, and then a working capability where the graphics are gone and you PLAY the instruments. Whizbang stuff for building the instruments, and simple multitimbral interface for using the built instruments.

    All of the OSes you listed are _capable_ of doing this. As for "best", I'd lean towards BeOS (as it's streamlined for this kind of thing), but "whichever one has both this software and the other day-to-day software you use" is probably the best answer, IMO.

  2. Re:the final nail in BeOS coffin by Rand+Race · · Score: 2
    OK, let me get this strait.

    BeOS is going down because of the shift in focus to embedded devices by Be Inc. QNX, an embedded device maker, will takeover Be's desktop market.

    Doesn't the reason for BeOS failing also apply to QNX? Is QNX going to focus on the desktop and leave embedded devices to Be? (I bet that idea has JLG creaming his pants)

    Without drag and drop support I won't use it, so it's still Be for now.... although I seriously want that DVD player.

    --
    Insanity is the last line of defence for the master diplomat. But you have to lay the groundwork early.
  3. Apple to Oranges dude ... QNX is more of a RTOS by BitMan · · Score: 2

    A better comparison is QNX to Cygnus eCos, the Linux-preemptive RT/Linux kernel/system, WindRiver's VxWorks, etc... It is really unfair (for both sides) to compare a "lightweight" OS for small, embedded systems against a be-all/do-all behemoth like Linux (which does have a minimum size limitation).

    I'm sure you'll be able to find some overlap, but it's really a question of "which is better for this application" and not "which is better period".

    -- Bryan "TheBS" Smith

    --
    -- Bryan "TheBS" Smith
    Independent Author, Consultant and Trainer
    1. Re:Apple to Oranges dude ... QNX is more of a RTOS by be-fan · · Score: 2

      Not really. By the looks of the review, it seems to be quite a competitor to Linux and Be on the desktop level. I mean just because it is fast/light (as if that precluded it from being a desktop OS.) Doesn't mean that it should be limited only to embedded platforms. I mean this WAS going to be the next Amiga OS you know.

      --
      A deep unwavering belief is a sure sign you're missing something...
  4. Re:Is a realtime OS nescessary for desktops? by Sloppy · · Score: 2

    The nice thing about using QNX IS that it is wonderful for embedded systems.

    And, IMHO, a nice thing about it being wonderful for embedded systems, is that even if the desktop turns out to be a flop (my Amiga paranoia has already set in), they still have another thriving market for the product. That way, even if things go badly, people who like it won't be quite so easily orphaned. Not quite as safe as open source, but it should still do the job of avoiding another Commodore incident.


    ---
    --
    As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
  5. Re:the final nail in BeOS coffin. NVIDIA patch by be-fan · · Score: 2

    Hey, thanks a lot.

    --
    A deep unwavering belief is a sure sign you're missing something...
  6. Re:Constant bashing... by be-fan · · Score: 2

    Linux is nowhere near playing in the same league as these microkernels (QNX and BeOS) until it fixes several things. A) Fix the versioning problem. If the binary standard changes every kernel version, then I can't be expected to use binary, pre-compiled modules, can I. Neither can vendors supply pre-compiled modules. Sure it's fine now, when all the hardware is supported out-box, but what about when Linux "makes it." Driver updates are a common occurance, and with the current situation, will be hell for users. B) Fact: 99% of people CANNOT figure out modules.conf. Fact: 99% of people shouldn't HAVE to figure out modules.conf Fact: 99% of people have no DESIRE to figure out modules.conf Fact: Unless everything comes preconfigured and you never upgrade your hardware, 99% of people WILL have to figure out modules.conf Fact: BeOS (and supposedly QNX as well, I haven't tried) can detect hardware and install it without any knowledge on the users part. Linux can't even figure out that tulip is an ethernet driver.

    --
    A deep unwavering belief is a sure sign you're missing something...
  7. Re:the final nail in BeOS coffin. NVIDIA patch by be-fan · · Score: 2

    I'm sorry, I'm a patch virgin. I copy everything from diff -u... down,
    save it to nvidia.pat, and patch -p0 it in the same directory that contains
    NVIDIA_kernel-0.9-4 right? So I've got
    /root/NVIDIA_kernel-0.9-4 and /root/nvidia.pat and
    I do patch -p0 nvidia.pat from /root? Also, I've
    never gotten a patch to work. Is it supposed to take
    insanely long?

    --
    A deep unwavering belief is a sure sign you're missing something...
  8. Some remarks... by mirko · · Score: 2
    • BeOS' soft realtime should not be confused with QNX' hard realtime:
      • Soft realtime means that the OS will launch the process/thread/program with no guarantee that it accomplishes its task at time.
      • Hard realtime means that if the OS estimates the task won't finish in time, it won't launch it at all.
    • [...]QNX's DVD player[...] : Many commercial "salon"-DVD players are using Neutrino+Photon+XingDVD in ROM, we can then be sure this works.
      Engineers "played" with such DVD players and managed to get their output on several (different) displays at once, due to the extraordinaire versatility of Photon.

    --
    --
    Trolling using another account since 2005.
  9. Re:Is a realtime OS nescessary for desktops? by Sloppy · · Score: 2

    If you had a slower processor and/or a really high system load, you might have some breakup in your audio. Or perhaps if you did something more demanding (DVD playback?) you might have problems? On my 700 MHz Athlon Linux box, I have noticed that the animations at the beginning of some Loki games (Myth2, Heavy Gear 2) are slightly choppy.

    Another type of example that comes to mind, is a behavior I have seen on OS/2, Windows, Linux (Gnome/KDE), and Macintosh: sometimes poorly responsive GUIs. If the system is really busy, you can click on a widget and not get immediate visual feedback that the computer "heard" you. Make the GUI feedback process realtime, sort of how Amigas do the GUI feedback as a high-absolute-priority process, and you could get Amiga-like snappiness.

    Realtime probably isn't strictly necessary for the desktop, but it's still a cool feature.


    ---
    --
    As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
  10. Free QNX by Animats · · Score: 3
    QNX is a neat little system. I just wish they'd get the promised free version out the door.

    A few points to note.

    • QNX is not anything like UNIX. There's a POSIX emulator, but underneath, it's a message-passing microkernel. Almost everything runs in protected mode. You call services by passing messages to them, which is done very efficiently. If you're going to program for QNX, learn how to use its interprocess communication services; don't program it like it's a UNIX variant.
    • It really is hard real-time. There's a defined maximum interrupt latency. This is a big win for streaming media and video.
    • There's no paging. Everything has to fit in memory. This is probably good; memory is cheap enough today that paging is generally a lose. The performance hit when you have to page in from disk on Windows or UNIX is so huge you don't want to page anyway. QNX software tends to be much less bloated than Windows or UNIX, so memory consumption is less anyway. It's possible to do useful web browsing on a 386 machine with QNX, booting from a floppy and not using the hard disk. (QNX gives away a demo disk for this.) It's supposed to work. QNX is used mostly for hard real-time industrial control applications. There are nuclear reactors controlled by QNX. QNX users have a very low tolerance for crashing. The top priority at QNX Inc. is eliminating crashes, not adding features. Don't expect dancing paper clips.
  11. This should be good... by AntiPasto · · Score: 2
    to get hands on... I know a lot of i-opener types have been interested into the interworkings of QNX for quite some time, and with the potential for even more loss-leader hardware (vaporous webpads) in the near future, we need people to be looking at this OS. The more people interested, and the more of a chance I have of having linux picture frames throughout my place ;)

    ----

  12. Oh my! by pen · · Score: 2
    What's thisssss? Could it be? The widgetsessss! They're keyboard-accessesssssible! Shortcutsessss abound! No moussssing required!

    Hooray!

    (Explanation: One of the biggest reason I shy away from MacOS, X, and some other GUIs and continue to use Windows on the desktop is the way a mouse seems to be required to use those. In Windows (well, I use NT) just about anything can be done with the keyboard, unless the developer of the particular program went out of his way and wrote some custom widgets or something.)

    Oh yeah, and those screenshots are pretty!

    --

  13. Re:Constant bashing... by be-fan · · Score: 2

    Okay, show me how to configure X windows automatically on Mandrake 7.1. (On my TNT, a damn common card, it don't work.) Show me how I can configure my soundcard in RedHat 6.2 without looking up my IRQs and DMAs (I've got an AWE64, again, a very common card.) Show me how Slackware 7.1 can install my two network cards (something that doesn't work on Mandrake either, they only detect one) without me editing modules.conf.

    --
    A deep unwavering belief is a sure sign you're missing something...
  14. Re:Constant bashing... by variable · · Score: 3

    This is a sticky issue.

    For example. If I didn't turn on "enable sound" the last time I built a kernel, can I just rebuild sb.o and insert it into the kernel? Nope.

    Yes Linux has loadable modules, but that is not nearly the same thing as what QNX provides with each driver being a process that can be started with an & and killed via "kill" at runtime and with each driver being in its own memory space. Linux is a monolithic kernel (which can sometimes have advatages) and you still need to rebuild stuff to make devices work. This is even more true between kernel versions.

    Good that you made this post, everyone should be informed and not too hung up on buzzwords.

    --
    ........ "The faster I go, the behinder I get" - Lewis Carroll
  15. Re:Constant bashing... by be-fan · · Score: 2

    Binary Standard: The BeOS driver API has changed a couple of times. Apparently the only place where there are "hacks" to load drivers with older versions are in the module loader.

    Modules.conf: Nearly everything can be figured out. BeOS configures my soundcard totally without my help. Linux doesn't. BeOS detects my two network cards and just asks me for IPs. Linux (Slackware 7.1) will only detect one card and I've got to edit modules.conf by hand. To install ALSA I even have to tell modules.conf how many cards to support! That's ridiculous.

    Detection: Again, installers can't do everything. A lot of people DO install their own hardware. And those people aren't necessarily all UNIX gurues. The problem is that under Windows, it's plug it in, insert driver disk. (90% of the time.) Under Linux, it's plug it in, then do all sorts of hardware dependant (installing a vid card is different from installing a sound card) stuff to get it running.

    --
    A deep unwavering belief is a sure sign you're missing something...
  16. Re:What I'd like this for... by be-fan · · Score: 2

    Actually, it seems that Linux software ports over real quick. Photon seems to have a layer that allows X apps to use Photon. I do know that GTK was ported over very quickly, and since it's POSIX complient, most apps should compile out of box. Not to mention the fact that it's going to get a port of lxrun.

    --
    A deep unwavering belief is a sure sign you're missing something...
  17. Re:Synthesizer OS? by NaughtyEddie · · Score: 2
    Hi,

    I hope you're still reading this thread. I'd email you, but you give no address. (I've been sick since Monday).

    I envisage something more like this:

    1. There's a tight microkernel OS which provides GQOS (Guaranteed Quality of Service) for different devices. In particular, the hard-drive and sound cards. It actually times hard-drive and sound-card accesses to give upper limits on the timing of these.
    2. This then interfaces with the standard drive and soundcards - IDE, SCSI and SB16 (to begin with)
    3. Drivers can be added by anyone
    4. Applications can be added by anyone
    5. The system provides a threading system specifically for sound-generating threads
    6. It's all open

    Then you can run it on a low-end machine or a high-end machine and it just gives you as many simultaneous tracks as it can handle. The system is open so anyone can go in and write modules or drivers.

    By replacing the OS you get to provide the speed and consistency of access that such a system needs.

    Thing is, I began designing such an OS five years ago, based on the StrongARM. Now, I wouldn't recommend doing audio on the StrongARM (unless you want to watch your 200 MIPS turn into 40 MFLOPS) but I certainly would recommend a Pentium III (watch your 1300 MIPS turn into 5200 MFLOPS!) But the point is, I have the microkernel design pretty much sketched out.

    It'd be sort-of like an open-source BeOS!

    So anyway, I'm quite revved up by this. The existence of Linux means I can basically crib drivers before I write my own GCOS drivers and get a system working in a small amount of time. Even V2_OS might be a good place to start (although the kernel is not open-source, it isn't protected either, so V2_OS makes a good bootstrap loader for a real OS ;)

    So what do you think?

    --

    --
    It's a .88 magnum -- it goes through schools.
    -- Danny Vermin
  18. Re:Synthesizer OS? by uebernewby · · Score: 2

    In my experience, most softsynthesis takes place on, well, uhm, sorry...Windows. I think there you have at least a partial answer to your question. Before people start screaming that the only reason for this is that Windows has a larger userbase: most (semi-) professional musicians, i.e. people who can afford the steep costs of a reasonably good software synth (at USD 500 they're not exactly toy software) prefer Macs. So I guess this must mean that there's something about Windows that makes it very suitable for real-time audio manipulation. I'm further guessing that this has something to do with Direct X, which lets software access the hardware directly. If you compare the Mac version of Acid to the Windows version (which is heavily optimized for Direct X), for example, you'll find that it's much less responsive and capable of handling *large* mixes. A similar situation occurs with name audio programs like CuBase, Wavelab and Logic, which contain almost no Win/Direct X platform-specific optimizations (sp?). They're clumsy and slow. So, to answer part of your questions, between the two major desktop OS-es (notice I said *desktop OS*, and not just *OS*), Windows wins because there's already a more or less stable way to handle the hardware side of things gracefully.

    I'm guessing that Linux will *never* be suited for hardware-intensive tasks like audio. There isn't, as of yet, a way to circumvent X and the kernel.

    And as for BeOS: well, from what I've seen from it, it could actually be good, if there was any software for it. For a Media OS it has surprisingly little substantive software. Demos of thirty mp3's playing simultaneously do make it look promising, though. I'm guessing they've designed the OS specifically so that it puts as few barriers as possible between the app and the media subsystem. Unfortunately, it is such a niche-system no manufacturer in their right mind would spend the millions of dollars needed to write an app. to specifically take advantage of the system.

    Finally, QNX: from what I've learnt about it in the past five minutes, it looks kinda promising because it's supposedly fast as hell. Still, though, no one is using it, so there won't be any serious software for it in the near future. Maybe what *will* happen, though, is that hardware manufacturers start using it as an os for virtual analog synths, because it would take away the need to develop a new OS specifically for a certain device. That would be pretty cool, actually: imagine being able to play tetris on your synth while the guitarist takes a ten minute solo!

    --

    News and bla for computer musicians: http://lomechanik.net/
  19. the QNX advantage by Anonymous Coward · · Score: 2

    With QNX, all drivers and OS modules - not just applications - run as separate MMU-protected processes. This architecture boosts reliability in a variety of ways. For example, ISVs can add custom drivers and system services without modifying the OS kernel and introducing potential kernel faults. And if an application or driver does behave "badly," the OS can intelligently restart the offending module, typically without a reboot. This is possible even if you are sitting at your computer without any pants on as I am currently doing. This architecture also makes it easier to upgrade drivers and other system software, again without rebooting.

    1. Re:the QNX advantage by GypC · · Score: 3

      Pantsless reboots? Oh man... I'm so there!

      "Free your mind and your ass will follow"

  20. Re:Synthesizer OS? by NaughtyEddie · · Score: 2
    You may be right. But when I'm writing music software I would like to be able to guarantee the latencies for the user. One glitch is too many! Windows is not architected for glitch-free low-latency playback (mind you, neither is the MacOS!) Your playback could suddenly go to pot if, say, someone opened a network port on your machine. Not to mention the problems if the disk thrashes. I guess for synthesis this is acceptable, but for processing (i.e. take a LIVE audio input and process it; maybe save it to disk) none of these OSes are up to the job.

    Except, perhaps, BeOS ... but I have only "heard good things" about BeOS, and never actually tried it out.

    --

    --
    It's a .88 magnum -- it goes through schools.
    -- Danny Vermin
  21. Re:Synthesizer OS? by NaughtyEddie · · Score: 2
    My money is on BeOS.

    Windows is simply unacceptable. The other post here about DirectX is quite misinformed. MacOS gives unbelievably better latency than Windows. Compare ReBirth for Windows/DirectX with >20ms latency (>100ms on NT) to ReBirth for Mac with MacOS is reasonably low-latency, but it's going in the wrong direction. Unices (love em or hate em) are again not designed for real-time work. The RT Linux stuff is promising, but apparently it's hard to dynamically link stuff into the real-time section, and you can't even use the FPU without jumping through some hoops.

    BeOS on the other hand is designed from the ground up for low-latency high-speed access to multimedia hardware. BeOS is asking for this sort of software, and it's cheap (if you're paying $500 for a soft synth, another $50 for the OS to run it on isn't too big a deal).

    The absolute best solution, of course, would be to not use a proprietory OS. But that's a way off yet ;)

    So, you wanna help me write this?

    --

    --
    It's a .88 magnum -- it goes through schools.
    -- Danny Vermin
  22. Re:Question: What is a 'real time' OS? by Detritus · · Score: 2
    A real-time operating system is an operating system that can offer guarantees about the scheduling of processes.

    Real-time systems are usually divided into hard real-time systems and soft real-time systems. With a hard real-time system, a late result has zero or negative value. With a soft real-time system, a late result has a positive value that becomes smaller as the time interval between the deadline and result increases.

    Real-time does not mean "real fast", it means predictable. A batch payroll system could be considered a real-time system if there are deadlines that must be met.

    --
    Mea navis aericumbens anguillis abundat
  23. Synthesizer OS? by Sleen · · Score: 2

    I am hoping some synth types are /ing here today....

    Which would make a better OS for a software synthesizer:

    1.BeOS
    2.QNX
    3.Linux with realtime patches/modules
    3.Win98 lite
    4.MacOS

    Softsynths like Reaktor from Native Instruments are becoming comparable to professional synthesizers in terms of interaction, capability, and musicality. But so far it seems the OS's these softsynths run on are a limiting factor.

    The ideal situation would seem to be an OS that has the graphical capability to present an interface for MAKING instruments, and then a working capability where the graphics are gone and you PLAY the instruments. Whizbang stuff for building the instruments, and simple multitimbral interface for using the built instruments...

    Which would be the best???

    -Sleen

    1. Re:Synthesizer OS? by NaughtyEddie · · Score: 2

      You know what? It sounds like there's really a niche for really high-quality sound synthesis and processing software. Maybe someone should write a special-purpose OS just for this? They could fork the Linux tree for the low-level "getting the machine up" stuff and just write basic drivers for SVGA, SB16, IDE and SCSI which would kick the crap out of what can be done on any of Linux, MacOS or Windows.

      --

      --
      It's a .88 magnum -- it goes through schools.
      -- Danny Vermin
  24. You're correct by mosch · · Score: 2

    I am referring to the QNX4 kernel. Do you have experience with the new version, and most importantly, have they fixed the obnoxious 'i'm forking therefore you may experience unexpected latency of' bug?

    I was writing an app where latency over 3ms would crash the hardware (bad hardware, i know) and this one bit me hard, and left a bad bad taste in my mouth.
    ----------------------------

  25. Re:What I'd like this for... by be-fan · · Score: 2

    Exactly WHY wouldn't you want to give up Linux in favor of this? (Not a flame, I'd just like to know advantages/disadvantages compared to Linux.) Additionally, a platform that doesn't use X always gets points in my book.

    BTW) Is Photon's solution a good one. It's fast, light, and mostly X compatible. Could we finally get rid of X with something like this?

    --
    A deep unwavering belief is a sure sign you're missing something...
  26. Re:How far is Helix Gnome from this?? by be-fan · · Score: 2

    What does this have to do with Linux? QNX doesn't even use X. Also, GNOME might be doable. GTK was quickly ported, QNX is officially POSIX complient, and Photon is pretty compatible with X.

    --
    A deep unwavering belief is a sure sign you're missing something...
  27. Re:the final nail in BeOS coffin by be-fan · · Score: 2

    Fuckwit. True, QNX does have some niceties that BeOS doesn't. HOWEVER...

    A) There is no proof that QNX can cut it the way Be can in media.

    B) It still doesn't have plans for accelerated OpenGL (currently the only thing accelerated is Mesa/Glide.)

    C) It might be more of a competitor to Linux than anything else. From my POV, it supports my hardware, is fast and small, and is a fully POSIX complient UNIX. Those are the only reasons I keep Linux around, and it might be nice to use a UNIX without all the attendant bloated-ness I had associated with the system. If all goes well, it's not bye bye BeOS, but bye bye Slackware.

    PS> As of now, NVIDIA Driver 0.9-4 still doesn't work with kernel 2.4-test6+. Any kernel hackers have any clue why? It seems to have something to do with the dissaperance of MAP_NR.

    --
    A deep unwavering belief is a sure sign you're missing something...
  28. Re:Who cares? by mosch · · Score: 2

    1 - You seem biased against VxWorks, did you have a bad experience with it?

    2 - i've seen qnx4 crash horridly.

    3 - nope, it's a real bug. if you pester qnx enough, and give them enough money eventually they'll tell you that they lose the ability to guaranteee it will meet deadlines during forks.

    4 - nope, not completely posix. sed is broken, to name the first bug i discovered in it.

    5 - yes, but vxworks has a slightly more sane licensing scheme, if only slightly.

    6 - yep, debugging and such on vxworks isn't as simple as it is on qnx, but i had to use ice to find the fork latency bug. that's not what I call easy either.

    I don't claim that making an RT-OS is easy, but I don't understand why /.'ers love QNX. It's not gratis (to use for real), it's not libre, and it doesn't offer any significant capabilities that are unique solely to the system. My point was simply that for people who are just toying around and learning about RT-OS's, why not help develop something that fits in with the ideals that /.'ers allegedly hold in high regard.
    ----------------------------

  29. I Agree With The Article by Phrogman · · Score: 3

    I am one of the folks running the pre-release version of this puppy, and I have to agree with the article completely. I had no problems installing it, and have had no problems running it. It detected my hardware perfectly and installed like a breeze (probably the easiest installation of any software I have ever installed). This is going to be a platform to watch.

    --
    "The first time I got drunk, I got married. The second time I bought a chimpanzee, after that I stayed sober" Arian Seid
  30. Re:Is a realtime OS nescessary for desktops? by variable · · Score: 2

    The nice thing about using QNX IS that it is wonderful for embedded systems. Better yet is being able to build those embedded systems using the exact same system you use on your desktop. There is nothing more painfull for development turn-around time then having to x-compile and reboot or download to another platform. Being able to use the exact same GUI and kernel has major benifits. You don't need to #ifdef and compile differnt parts to make it fit in your PDA. Simply only run the parts of the system you need to run. This is the true advantage of the microkernel.

    --
    ........ "The faster I go, the behinder I get" - Lewis Carroll