I use QNX for real time data acquisition tasks. It runs beautifully on my 100 MHz 486 PC104 CPU. I wrote a device driver that allows sampling of 2 accelerometer channels at 50 KHz each and 16-bits of resolution. You can't even tell it is running. Concurrently with that sampling, I have a PPP process managing an internet link over a Kyocera 200 module (1XRTT), a Garmin GPS monitoring time and position, a TCP server feeding data to the locomotive over an 802.11b wireless LAN, DSP processes crunching the accelerometer data, a serial process talking rs485 to pull data off 7 bearing transmitter units, a PIC processor monitoring wheel speed and other processes. All that going on on a 100 MHz 486 in 32 megabytes of RAM and a solid state 128 MB disk module. Try that with Windows.
The only slow performance that I've witnessed on QNX 6 has been the Arcom VGA board during shutdown. The Arcom driver isn't particularly good at graphics on the PC104 stack. My development box is a PII 350 MHz Pentium with 384 MB RAM and 30 GB of disk. That machine has an ATI graphics board. It is MUCH snappier than my Windows 2000 machine running a similar ATI card on a 1.1 GHz Athlon CPU with 512 MB RAM and a 60 GB ATA100 disk.
There is one other area of slow performance that I need to fix in my current hardware suite under QNX 6.2.1. The boot process is managed by the "diskboot" executable. It appears to be probing for SCSI controllers, but I have only the Apacer solid state disk module (EIDE). The Apacer is ready to go in 1 second, but the SCSI probes for 7 targets with mandatory timeouts of 2 seconds per target causes a big delay in boot up. The "sloginfo" analysis program exposes the source of the delay, but doesn't explain what diskboot is touching. QNX 4.25 booted to fully ready in 20 seconds.