QNX RtP 6.2 World Preview 209
Jason writes: "OSNews is running an exclusive preview of the brand new version 6.2 of the QNX realtime operating system. The article is going through the installation process, the Photon user interface (lots of screenshots included), the internals, and the advantages and disadvantages of the OS as a desktop system. QNX RtP 6.2 is expected to be released for free (for non commercial usage) before March."
Why would anyone use (Score:2, Redundant)
Real time OS's Have Issues with performance on the desktop, just as desktop/server OS's Have Issues in the real time space.
Re:Why would anyone use (Score:2, Informative)
Re:Why would anyone use (Score:3, Informative)
QNX RtP is serving as the self hosted development platform for QNX-based internet appliances and other QNX embedded applications.
Re:Why would anyone use (Score:2, Interesting)
From the article it seems like the tools and apps that are for QNX RTP are there to make the developers life less painfull (eg. the media application) and it's not for a general purpose desktop - and why can't developers have a nice GUI?
Just my 2 pence.
Regards, Chris
Re:Why would anyone use (Score:2, Interesting)
1 - self hosted development: it is generally intended to be the embedded developer's desktop system, not a general purpose desktop system
2 - GUIs are frequently used in embedded/realtime systems. Factory control systems, health monitoring & analysis, PDAs.
My $0.02 (Canadian)
Re:Why would anyone use (Score:3, Funny)
Yeah, but the main "issue" they have is that they are so damned fast that users think it must be a trick.
What's good for RT, is good for everyone.
Re:Why would anyone use (Score:2)
What you are describing is windows, not a true RT system. I once started developing a real-time data processing system in NT, and found I had to set the inner loop in my program to "real time priority" in order to keep up with the data coming in. The result was that I lost the mouse and keyboard. The only way out was to set the inner loop to yield to other processes when its calculation was done. This, effectively, amounts to rewriting the kernel low-level scheduler.
In a true real-time system, I would be able to set the mouse and keyboard processes to run at given intervals, while still having my data-handling routine able to digest what came in.
Fortunately, my story has a happy ending: I found out that Linux has a good enough scheduler to run my program without data loss, even if it's not a true real-time OS. But I toyed with the idea of using QNX for a while. Gave up when found out how much it costs.
Re:Why would anyone use (Score:2)
Unix geeks demanding CLI-only interfaces aren't the only people that use embedded or real-time systems.
Scenario A) An embedded device controllable by the enduser: Gas pumps, POS terminals, ATMs, PDAs.
Scenario B) A realtime system with a non-realtime front end: medical scanning systems, manufacturing control systems.
A million more scenarios exist. Embedded RTOS aren't only for unseen automobile smog sensors.
QNX goes back a *long* way (Score:5, Interesting)
The design of the machine was interesting--intelligent nodes running an 80186 connected by ArcNet to a central server node--but they ran a version of QNX. I remember the slightly different set of commands than we are familiar with in UNIX: for example, to go up a directory, it was 'cd ^', files could be deleted with 'zap', and commands could be easily run on remote nodes by prefixing the command with [nodenum].
It was on this machine and OS that I cut my teeth in C, 80x86 assembly and basic networking concepts (I wrote a small multi-node chat program using the virtual circuit calls in QNX), and as such I was always have very fond memories of it. Thanks for letting me reminisce.
Re:QNX goes back a *long* way (Score:2, Informative)
Since then QNX has moved up in the world. QNX 4 has full posix compliance and is very much like a normal *NIX. 6.x is so much like *NIX on the command line, that you can barely tell the difference.
Re:QNX goes back a *long* way (Score:1)
Re:QNX goes back a *long* way (Score:2)
Re:QNX goes back a *long* way (Score:1)
But to think, 80186's in a desktop computer, networked with arcnet, running a non-mainstream OS? I'm already in love. I just hope they get along with my TRS-80 Model II.
Re:QNX goes back a *long* way (Score:2)
I actually really liked the trackballs on those systems, it was really easy to move the ball around with your hand and press the Action button with your thumb.
And anyone remember Offshore Fishing? That game was great.
Re:QNX goes back a *long* way (Score:1)
Re:QNX goes back a *long* way (Score:1)
Re:QNX goes back a *long* way (Score:2, Interesting)
I fondly remember the 'ipaint' program on the ICONS--that program where you could create vector-based animation by drawing key frames. Also, there was that really cool chemistry lab program.
Most of the kids at school grudgingly used them--I remember it had some sort of 'PC Compatibility' mode, and they tried to teach kids WordPerfect on them. Wordperfect under the DOS compatibility mode was brutally slow though--felt a bit like wading through a pool of bubblegum. I tried to stay away from them as much as possible.
I had one friend that waded through the reference manuals for the ICON, and actually did quite a bit of development under them. That was like him though--always wanting to figure out what made things tick. While most of us were content with DOS, he was mastering UNIX, QNX, C, and this wierd thing called 'Usenet'. I can honestly say he knew more about the ICON than anybody else at the school, including the Comp. Sci teacher/sysadmin.
There's no doubt there was some inner beauty to the ICON--certainly, it was a very interesting network architecture. Alas, this was all hidden behind horrific applications and a cumbersome user interface.
I think the ICON is what you get when you let the government design computers. All the right features, on paper they should have been great...terrible execution though.
Alas, QNX! (Score:3, Interesting)
When I left Convergent, I ended up working with 8086 and 80286 systems -- and found the limitations of MS-DOS really painful. QNX was then being marketed as a DOS alternative. They claimed to be able to do serious multitasking on 8 mhz systems. I actually found that claim credible, not to mention tantalizing. But I never got a chance to test it. The QNX license fees were just too high.
It's a real pity QNX wasn't in the picture when IBM was shopping around for a PC OS. History would be very different!
Re:QNX goes back a *long* way (Score:2, Informative)
Do any Canadians (perhaps only Ontarians) remember the ICON computers they used to have in elementary and high schools?
Yup. Used 'em in Grade 7/8 IIRC at Stanley Park Senior Public in Kitchener, ON. (Grade 7 would have been '89?) -- I got booted out of the room after a while for dicking around at the command prompt they boot up with, trying to get in to something I had no idea about at the time.
I've got one now (had two) -- they cut off the keyboard though, and I've got to figure out what pins go where (the connector's gone) but I'd love to boot it up again. You've got the specifications exactly right: 80186 (basically a controller version of the 8086, it includes the PIC, DMA, PIT and a few other of the 82xx-series of support chips in the processor package itself), I think about 640k of memory (weird staggered-SIPP package), arcnet, EGA or VGA display. Gray case that boots up blue and spends 99% of its time displaying blue background. :-)
I bet you could get something like ELKS running on it without much trouble.
Man... I remember the *sound* of the room they were in. the server(s) (I believe we had two, one for each double row of ICONs, about 20-24 ICONs per server) with physically ENORMOUS hard drives and fans and fans and fans... in a room with no sound suppression. It sounded like a large colo facility does today, I bet.
Re:QNX goes back a *long* way [OT] (Score:1)
I remember we all wanted to get ROOT user access since this would give us super powers. The teachers had no clue as how to use them and just looked at these monsters like monsters. Then one day a teacher was clueless and let some kids watch over his shoulder and to see the ROOT password. Within a couple of hours the entire network came crashing.
The problem was that nobody knew what they were doing, students included, and the "hacker" copied the entire operating system from the root directory to his directory. But instead of a copy it was a move. The network came to a screeching halt for a week since nobody knew what to do.
After that everyone was more nervous... Ahhh... The good ol' days.
But what was cool about the ICON was even in 1984 it worked in a multi-tasking environment. Not like the networks of C64's or Commodore Pets with its muppet network system.
Ok I am OT with this posting, but let me go really OT.
Before the ICON we had Commodore Pets networked together with a serial cable using the muppet network. The muppet network was not intelligent enough to figure out who was writing what and when. Therefore if somebody wrote to the printer or the disk while someone else was already doing something the two would get joined. So you could end up with a printout that was the concatnation of two documents. To get around this we had to yell "Writing", "Printing" and "Done". At the same time somebody had to go to the chalkboard and draw an X.
Wow, now things simply work!!!!
QNX had a totally broken low-level disk copy cmd (Score:1)
Re:QNX goes back a *long* way (Score:1)
I remember I would complete the two week lessons in a day or two and spend the rest of the time getting into trouble, such as the time I recreated the entire login screen, ASCII art and all, in a BASIC program. Using a friend's account, a few of us installed it all around the lab and waited for people to log in at which point their passwords were logged to a file. The only problem was we had nowhere to go after that, so the program just displayed some lame message asking the user to reboot their computer. Almost everyone did, except for the guy whose computer backed towards mine. Needless to say I was caught, chastised, and never hacked anything again. ;)
Re:QNX goes back a *long* way (Score:1)
See cleannorth.org [cleannorth.org] if you're interested in these things. We get tons from the school board here at every event. They're still trying to get rid of them.
If you want to try to make arrangements to get some from us, I urge you to (we're in boonie-land Canada, though).
-Dan
Re:QNX goes back a *long* way (Score:2)
Quantum made a very wise and sensible decision with QNX 4 (what happened to 3?) to go Posix since it made the OS tolerable and almost Unix like. Still, by that time I was getting restless feet and I moved onto bigger and better things. I still wonder about the company I left - I bet there are poor souls working there who have to fix problems in QNX 2. May god have mercy on their souls.
And.. (Score:2)
Ever used VxWorks?
Re:QNX goes back a *long* way (Score:2)
Indeed. I went to an Ontario high school and gradualted in 1993. By 1993 we had a lot of macs and PCs, but in the earlier grades we used them a lot.
We did elemntary programming using logo and later Pascal using the ICONs. I never remember doing any C with them, but by the time I started learning C it was 1992, so I was on to PCs by then.
Re:QNX goes back a *long* way (Score:2)
Anyway, the last year I remember them was about 1991--they were replaced with 'modern' 386s around that time.
Re:QNX goes back a *long* way (Score:1)
I remember them well. They had somewhat of a GUI and the cursor was controllable with a trackball. I do remember that the later incarnations of the server system used a computer that could run both DOS and UNISYS applications.
Of course I was only like 8 years old at the time so the details are a little sketchy.
A microkernel that doesnt suck (Score:2, Interesting)
Re:A microkernel that doesnt suck (Score:2)
First Impressions (Score:3, Insightful)
These shots of QNX make is seem like they've missed out all the bad features of other OS's and included all the good ones. I like it.
Re:First Impressions (Score:4, Informative)
You can always get Opera [opera.com] if you want.
Re:First Impressions (Score:1)
I always feel though, that the OS's native browser (the built in one) should be good though. Sometimes I just want to get on and do work without having to get extra software. I know that's bad for the industry, etc, but c'est la vie. From experience, the later versions of Konqueror meet this requirement - being just as fast as Opera on the same system (Hmmm... Opera has definitely got an good thing going there), but I've yet to see another OS where this can be experienced. I've heard Mozilla is available for it also but don't see any mention of it on Mozilla's site [mozilla.org] (on a top of the range PC you don't tend to notice the speed differences and the UI/standards support is more of an issue)
Re:First Impressions (Score:1)
To me there are alot more important issues in a RTOS than the eye-canday... response speeds, QoS guarantees, robustness etc.
And robustness and pretty UI's usually don't go well together as alot of pretty UI's break the KISS rules...
Hello Point... you've missed it. (Score:5, Insightful)
Its a real time operating system for embedded devices. The PC based platform is for development to help you rather than plugging directly into the RS232 port of your dev kit.
The questions you ask are nothing to do with an RTOS but looking at it from the perspective of "Oh look a Windows competitor" this is NOT in the same market as even WindowsCE, although there is some overlap. The PC based platform is to aid development, it can be stripped down to a delivery box but this is not for Joe Sixpack PC user.
The real question is "Can anything else run in a couple of Megs of RAM..... or less" and have guarenteed delivery times on tasks. The answer for Linux and MS-Windows is NOPE.
THIS IS NOT A DESKTOP OS.
Sorry for shouting but people should
a) Read the article
b) Understand that MS-Windows and bloatware are not the most interesting market in the world.
c) Realise that cut and paste on a VCR is a silly idea.
Re:Hello Point... you've missed it. (Score:5, Interesting)
You're totally wrong. QNX Neutrino is a bottom to top OS from tiny machines to clusters of high power hardware. QNX has pushed their OS on thin-cients, Internet Appliances, etc, it isn't just for embedded monitoring hardware. Indeed the big QNX push is "QNX on a floppy" that basically turns a PC into an IA.
Internet Appliance != Desktop (Score:4, Interesting)
And an internet appliance is a minimal spec box, possibly without a hard-disk that has a cheap screen (possibly touch screen). Again its not aimed at the Microsoft market so the original point still holds. The cluster stuff is for specific tasks and not the desktop. The point is quite simple. Not every OS out there is meant to run the same way as windows, there is a wonderful world out there of OSes that are aimed at different tasks, all too often Slashdot is concerned, and its readership only aware, of the MS style of market.
OS/390, AS/400, EPOC, QNX etc etc etc... well cool OSes for paticular circumstances.
Re:Internet Appliance != Desktop (Score:1)
Sure it's aimed at the MS market! Just like BeOS would love to replace your desktop, QNX would love for you to use their OS as your desktop. The reality is that the world is such that that is almost possible: With more and more apps being web based, the reality is that QNX with Opera or some other reasonably full featured browser can be satisfactory for most users. Of course QNX is a full OS (it just happens to put stability in front of everything else), meaning that technically there is nothing that can't be done, and of course right now you can do most anything you'd want on QNX.
Cluephone ringing... Pick it up! (Score:1, Insightful)
You're absolutely fixated on the eye-candy, aren't you? The point is that QNX is NOT ABOUT THE GUI *OR* THE DESKTOP ENVIRONMENT!
It's like asking what sort of graphics card is on the database server. Interesting, maybe, but the whole point is NOT about the graphics.
They are in NO WAY interested with QNX in taking over the desktop market! The GUI is ONLY there to aid EMBEDDED APP DEVELOPMENT! Nothing more! QNX RtP is NOT aimed at being a full-featured desktop Personal Computer replacement, ala Linux. The only thing the GUI would be good for is an Internet Appliance environment where most of the interaction is through a graphical engine.
But guess what! Most of the time QNX is used, you don't see much in the way of graphics, and even less of any sort of a windowed environment. See that gas pump running QNX? Yeah, it's got a pretty graphics display showing a car going through a car wash, but you *certainly* don't cut and paste anything.
And QNX would *only* love for you to use QNX as your desktop because you would hopefully be developing an embedded app.
Maybe you should pick it up (Score:1)
Do you recall when Amiga was in talks with QNX to see about basing the new Amiga PC on QNX? Funny thing, but QNX was a very willing participant in those talks. QNX has also coupled with quite a few vendors making full-featured IAs (IAs are just "non-Microsoft desktop PCs": There's nothing super duper special about them), and quite a few are based on it. QNX is _VERY_MUCH_ about "eye candy" because that's one important facet of computing.
Re:Maybe we should BOTH pick it up. (Score:1)
Agreed, and the beauty of QNX Neutrino is that the core of it is so incredibly, beautifully tiny, and having a GUI is completely optional (and the stability of the system is not compromised by a GUI, etc). Having said that technically there is nothing constraining QNX from being a full fledged OS, apart from perhaps the overhead of being "real-time" (though with modern PCs that isn't a big deal and is worth it) and the stability overhead, except for a lack of apps, and that is something that QNX has been working on through 3rd party partnerships: i.e. Opera, etc. With more of that I can see it being a real winner operating system for fat-thin-clients (:-)) that eventually do all that Aunt Martha wants in her day to day living. Hell I'd say it is at that state right now if Aunt Martha uses Hotmail and is a casual computer user.
Re:Hello Point... you've missed it. (Score:1)
The point is that QNX is showing users how much functionality they can fit in a tiny amount of space: Basically they're repositioning themselves as an IA backend company (and I think they'll be very successful at it in the near future).
Re:Hello Point... you've missed it. (Score:1)
But cut 'n paste on a development envirenment is not a silly idea. Its almost mandatory. Hell, you probably have cut 'n paste in your VT without even a GUI.
Re:Hello Point... you've missed it. (Score:2)
Desktop QNX (Score:4, Insightful)
At one time QNX's realtime features worked in favor of its use on the desktop. That was 20 years ago, when processors were wimpy, and attempts to create GUIs based on DOS had pathetic results.
Of course, QNX's window of opportunity to compete with NT, or even Linux, has long since closed, So the development efforts and the marketing noise emphasize embedded and realtime apps. That's why the Photon GUI is so dated, and the interactive apps are starting to clash with the desktop apps. These are things that could be fixed, but never will be. The reasons are economic, not technical
Re:First Impressions (Score:2)
Re:First Impressions (Score:1)
Usually you'll start a session on an xterm and make calculations as needed, but
echo "34 * (7 + 5000)" | bc
works too. Better than bc, only a real HP48G within reach. And yes, I would kill for a Palm calculator application with 1/3 of the HP48G functionality.
Re:First Impressions (Score:2)
You are wrong about KDE's calculator not supporting cut and paste. If you right click on the calc's "display", the value is copied to the clip board. If you middle-click on the display, whatever is on the clipboard is pasted in.
Re:First Impressions (Score:1)
It's not a server OS really, it's a RTOS, much used for embedded stuff
Who is this reviewer? (Score:2, Interesting)
Re:Who is this reviewer? (Score:5, Insightful)
As for a background in embedded systems, I'm not sure - but she is certainly more qualified than you suggest, having experience with many OSes incl. BeOS, AtheOS and FreeBSD among others...
QNX vs. Joel On Software (Score:2, Insightful)
A simple OS for mom (Score:3, Interesting)
Maybe this is it. Show her how to dial up with the modem, use launch the email client and web client and find a version of AIM and there you go. I imagine that because it's UNIX(like), you should be able to run it non-priviliged without problems or fear of someone else messing it up.
Has anyone tried running this on slow hardware? (Such as a P133 or something w/32 megs ram?) How does it fare?
Re:A simple OS for mom (Score:1)
Re:A simple OS for mom (Score:1)
Re:A simple OS for mom (Score:3, Informative)
QNX 6.something is now available for download from QNX's web site -- I installed it last weekend and played around with it a little bit. It appears that most of the user utilities are taken from NetBSD, and the configuration file tree is structured very closely after BSD. The system library claims POSIX compiance, and the kernel claims conformance to the realtime POSIX API.
Re:A simple OS for mom (Score:5, Interesting)
Re:A simple OS for mom (Score:1)
I-Opener (Score:1)
-Steve
Very Cool (Score:1, Interesting)
6.0 was excellent, but patch B killed TCP/IP networking. Either that or the driver for my NIC was bad. Performance was good on even 32 MB RAM.
6.1 was an improvement mostly in the details: small little useful features were added, driver support was added, performance tweaks were added (try playing 32 MP3s simultanesouly on a Windows 2000 box with just 32 mgs of RAM!), and overall it was what one would expect from a secondary release.
If 6.2 is anything to 6.1 like 6.1 was to 6.0, I'd say the QNX guys had found the right pace, although it'd be nicer to have these updates every 6-9 months instead of every 9-12 months.
I'm running QNX RtP 6.1 on a dual Pentium Pro system, each proc has the 1-meg L2 cache and is overclocked to 233MHz, and 32 megs of RAM (going to a gig soon).
QNX (Score:1)
Re:QNX (Score:1)
Anyways, I tried it back with v4, liked it but had no use for it, almost put it on one of my machines when v6 came out, but it still had that nice little isa network card problem that had plagued me before (3c509b, when it comes to non-mainstream OS's it causes more problems then it's worth, just ask any BeOS user)
Re:QNX (Score:1)
"[...] and 3D support seems to still only work with Glide and Voodoo3."
Well, guess that answers that...
Re:QNX (Score:1)
Maybe you meen quake1?
QNX and the desktop (Score:1, Informative)
I'm waiting before I install on my main machine, however. I've been following the progress of QNX for quite a few years now and I'd like to say it's coming along quite nicely, just give it more time.
Oh and don't praise it or knock over it's desktop appearance. Desktop is about the last thing I look for in an OS (if it's that bad I can always create a better way myself.. hrmf).
QNX: longtime (semi) embedded player (Score:3, Interesting)
I'm heard first-hand testimonials attesting to its bullet-proof operation which makes it a great choice for controlling machinery. You can also install, de-install just about any service/driver/app without needing to reboot.
Where I work, we make large, expensive automated testing equipment (lotsa horsepower, moving parts, other dangerous shit). We wanted to eval QNX about 3 years ago, but they told me they only provide free eval copies to their $100K plus customers. We make about 7 to 12 machines per year; they slammed the door in my face.
Now (and their previous free non-comm version) that the've got a pkg I can use to eval, it's too late. Even if we were still in a position to choose QNX, I doubt we'd easily forget our previous snubbing.
Re:QNX: longtime (semi) embedded player (Score:1)
Amiga (Score:4, Insightful)
I guess this is a peek at what the new Amiga could have been. It doesn't look as nice as 3.9, though the underlying technology is pretty neat.
Re:Amiga (Score:1)
You have actually managed to include the word "amiga" in a post to slashdot without immediately being moderated down and told to "let the amiga die peacefully" and other equally tedious replies amiga fans usually get.
congratulations
QNX is underrated... (Score:1)
Some hangups. (Score:5, Interesting)
1) Lack of unified VM/buffer-cache. The size of the disk cache is fixed rather than dynamically adjusted depending on need.
2) Lack of proper swapping. Since swapping kills embedded apps, RtP lacks good swapping. Use of swap has to be explicitly coded into the app, and was implemented as sort of a hack to allow gcc to be self-hosted.
3) Real-time scheduler. The hard-real time scheduler might be nice on an embedded system, but on a desktop system (where fairness takes a back seat to user-percieved responsiveness) it doesn't work well.
4) Crappy disk subsystem. I don't know if this problem has been fixed in 6.2 (I doubt it) but RtP has a really slow disk system. The IDE drivers have issues and the filesystem is ancient.
Some of the numbers that RtP shows aren't as impressive as they could be. 0.55us context switches sound great, but Linux can do switches on that order as well. Still, RtP is a great system. QNet, in particular, is very featureful, and Photon totally destroys X in every area except maybe 3D support. It has superlative network transparency, a good (fast) widget set, incredible fonts (courtesy of BitStream's FontFusion) and a nice, lean, architecture. If QSSL would port Photon to Linux (which wouldn't be that hard, given that both are mostly straight POSIX) I'd pay to run it.
Re:Some hangups. (Score:3, Interesting)
Huh? Fairness is the enemy of responsiveness. There is no back-seat. On an RT system, if you have your UI run at a higher priority than your cpu-sucking apps, you get responsiveness that Windows/Linux users can only dream about.
Re:Some hangups. (Score:2)
QNX RtP's scheduler, a straight priority-driver round-robin affair, allows a high priority process to run whenever it becomes ready, even if it is preempting the foregroung GUI process. Its a very static scheduler, which means it doesn't take into account the myriad of issues that result in good UI response.
Traditional UNIX schedulers try to be fair to each process, penalizing CPU-bound processes and giving better response to I/O bound processes. This, too, has flaws. A CPU-bound GUI process can get penalized when an I/O bound background process (such as a compiler) can get boosted. The scheduler doesn't take into account which process is in the foreground when making decisions.
The two best schedulers I've seen for desktop systems are Windows NT's and BeOS's. Both treat GUI scheduling as an integral part of the system and take issues such as which is the foreground process into account when making decisions. This is not as "clean" as the UNIX way of doing things, but results in much better user-percieved responsiveness.
Re:Boosting the foreground GUI application (Score:2)
Re:Some hangups. (Score:3, Informative)
I disagree in part.
I can see why you say this, but in practice I can't see this as a problem. The size of the disk cache is increased with the number of devices mounted. On the other hand, separate caches mean you can implement different buffer cache policies depending on the device. (You can imagine, for example, that flash memory could use a very different write-back policy than disk.)
Separation of mechanism and policy is something that pervades QNX, and is arguably the key to the flexibility of modern operating systems (compared with the inflexibility of monolithic systems). Even the QNX kernel, Neutrino, is actually a microkernel built on top of a nanokernel. The nanokernel implements mechanism, and the microkernel implements policy.
It's not a hack, but I do think it's unfortunate that it's not "officially" supported. It would make more sense to:
You really need a hybrid (and I don't mean RTLinux). Desktop systems need real-time. BeOS users can testify to this. Also, there are new applications such as serving streaming media and ATM routing which really need real-time. Even burning CDs really needs real-time to do properly.
Admittedly, you probably don't need to implement an ATM switch on your desktop machine, but you might on your server. Real-time scheduling might be a really good thing here.
That's true.
Re:Some hangups. (Score:2)
>>>>>>>>>
Seperate caching policies can be implemented with a unified cache as well. The thing is, that on a desktop machine, the usage of disk cache can vary wildly. At one minute, the user might be running a disk-intensive program like a compiler, and the next moment they might be running a program that doesn't touch the disk, like a game or raytracer.
You really need a hybrid (and I don't mean RTLinux). Desktop systems need real-time. BeOS users can testify to this. Also, there are new applications such as serving streaming media and ATM routing which really need real-time. Even burning CDs really needs real-time to do properly.
>>>>>>>>>>
I think you need soft-realtime, but you have to be flexible about it. Hard-realtime, with its viscious demands on timing, is really not appropriate for an environment where you might sometimes want to "break the rules" and give a process some extra time in order to make the desktop more responsive to the user.
Re:Some hangups. (Score:2)
True, but I wouldn't like to maintain or debug the code that does it.
By "disk-intensive [...] like a compiler", I assume you're referring to VM performance. Correct me if I'm wrong (I may well be), but shouldn't pages written out to swap or read in from swap not hit the buffer cache at all? (They might if you're using a swap file rather than a dedicated swap device, of course.)
Games and raytracers aren't disk intensive only because they do their own caching, not relying on the OS to get policy right. Games can be several CDs in size, and are only managable because they're easily partitioned into levels.
Renderers (including raytracers) aren't so lucky. A Pixar-level scene may have up to 2Gb of gzipped geometric data and 10Gb of texture data, and you don't know in advance what's needed when. Needless to say, professional renderers spend a lot of lines of code managing cached data very carefully.
Re:Some hangups. (Score:3)
2) For all practical purposes, X is XFree86. We are talking desktop OSs here and there is only one X server that is of any consideration as a main GUI for an OS and that is XFree86. I don't care what SGI has made IRIX's version of X do, it doesn't run on Intel machines and is thus irrelevent. Isn't life great when you have 99% market share? That said, I challenge you to point out one thing that X does better than Photon, aside from 3D,
Re:Some hangups. (Score:2)
[qnx.com]
"[scale] seamlessly from the leanest consumer device right up to the largest distributed SMP systems."
Moving away from desktop. (Score:2, Insightful)
GUI (Score:2)
Re:AAAAAAARGH!!! (Score:2)
No.
A Seriously cheap way to get 'net connected! (Score:2, Interesting)
It's a pity Be [be.com] crashed out of the embedded market really; their BeIA operating system was amazingly efficient. We were developing a system using the Compaq devices as shop terminals, (the versions we had included ethernet ports) and even when running telnetd, ftpd, the desktop (tracker) and the Opera browser, they were using like 18-20MB of their 32MB RAM! Pretty fast too, they could play Flash 4 animations at a decent speed even with pretty slow processors. An interesting thing about the Opera browser on the BeIA platform was that it gradually leaked memory, losing a little every time a new page was loaded. Once the device was over 90-92% memory usage, the browser was killed, and respawned. However, the user wouldn't notice this, as when the browser was killed, it left its image on the screen, then reloaded the last page visited so it was just a slight delay!
where are the pics?? (Score:1)
All my hardware is supported. (Score:2, Funny)
I have no authority on the matter, but it looks like a pretty cool OS.
I'm in love with RtP (Score:4, Insightful)
The beauty of QNX and RtP is the microkernel design (let the flamewars begin). The OS is exteremly resilient because the core kernel just acts as a messaging bus for all other services that run in the user space. For example, should your filesystem crash you can just restart it like any other user space process!. Alternatively if you don't need multitasking capabilities but memory and hardware are at premium you simply don't run proc and don't have to put up with the overhead of a process scheduler. QNX is such a clean design it puts other microkernels to shame. Rock on QSSL.
Should your filesystem crash... (Score:1)
License Fee (Score:3, Insightful)
-
Re:License Fee (Score:2)
This is in many ways the same situation that exists under Microsoft. If you release a Windows app created on a pirated copy of Windows, and Microsoft found out, you're in deep doodoo. QNX at least gives you an uncrippled evaluation copy to use.
According to my QNX rep, you *can* release non-commercial software for QNX using the evaluation copy. Of course, he's not a lawyer, but a salesman, but I suspect he knows more about it than I.
Re:License Fee (Score:1)
I know what I prefer
Re:License Fee (Score:2)
Would this help for my 486 lab? (Score:1)
Would QNX be a viable option?
All we need them for is to Internet surf and write essays, and be able to print to a Postscript Network Printer.
Is this possible with QNX?
Are the computers fast enough to run it? Is there enough Hardware support for them (I believe they all are either 486 ps/2s or Compaqs, and they all have 3com cards in them.)
Thankyou
Re:Would this help for my 486 lab? (Score:2)
UNIX? (Score:1)
Why not on the desktop? (Score:1)
Am I off-base here?
Re:Why not on the desktop? (Score:1)
yepp, they aiming at *developers* developing embedded stuff.
I like QNX and all but... (Score:1)
I was impressed with QNX, stable, fast, easy to setup(auto-detection on all hardware, unlike some operating systems I know...), quake3 ran
Re:Grammer Nazi (Score:2, Informative)
Steve
0.55us is very good (Score:3, Informative)
Windows performs 50 switches per second, but appears to take on the order of 200us to perform a single context switch. That means that windows spends about 10 ms in context switches.
QNX would spend 25us in context switches. This means that it can do a lot more, say a 1000, thats only 1.25ms spent in switches, and a much smoother communitcation between threads.
Re:context switch (Score:1, Informative)
In a process-process cx (such as expiry) the kernel saves the running processes context (its registers, IP and in some cases the TLBs) and loads the next one. This memory transfer takes more CPU cycles and contributes to the delay. The rest is the expensive (on x86, anyway) re-loading of the page table and caches. Obviously the new process shouldn't be able to read the old processes memory, so the caches and TLBs must be cleared. They then get re-loaded by the next processes page faults.
That's the main time sink in a context switch.