Main Page | See live article | Alphabetical index

QNX

QNX (pronounced either Q-N-X or Q-nix) is a commercial POSIX-compliant Unix-like real-time operating system, aimed primarily at the embedded systems market. Some important competitors in the embedded market are VxWorks, Linux, Windows CE and OS-9; however QNX continues to outperform them all in most tests.

History

Gordon Bell and Dan Dodge were students at the University of Waterloo in 1980 who both took a standard computer science course in operating system design, in which the students constructed a basic real-time kernel. Both were convinced that there was a commercial need for such a system, and moved to Kanata, Ontario (a high-tech area outside Ottawa) to start Quantum Software that year, and in 1982 the first version (then camel cased as QnX) was released for the Intel 8088 CPU.

Oddly enough, one of QnX's first widespread uses was in the non-embedded world, when it was selected as the operating system for the Ontario education system's own computer design, the Unisys ICON. Over the years QnX was used mostly for "larger" projects, as its 44k kernel was too large to fit inside the single-chip computers of the era. The system garnered an enviable reputation for reliability, and found itself in use in a number of industrial applications running machinery.

In the mid 1990s Quantum realized that the market was rapidly moving towards the POSIX model and decided to re-write the kernel to be much more compatible at a lower level.

The result was QNX 4. This was available with an embeddable GUI called Photon microGUI as well as a QNX version of X-Windows. QNX 4 made porting Unix software much easier and removed many of the quirks of the earlier version. Toward the end of the 1990s they decided to model a new version on Linux as much as possible, while retaining the microkernel architecture.

This resulted in QNX Neutrino, which was released in 2001. This version typically ships with the Photon microGUI, a development environment based on various GNU tools, and internet software including a web browser (Mozilla) and server. The company also re-named itself when Neutrino was released, and is now known as QNX Software Systems.

Neutrino was slated to re-appear on the desktop as the basis of a new Amiga operating system. This idea apparently died after management changed the goals of the "new" Amiga. (The new goal appears to be "do nothing," and their new machine has still not released now, several years later.)

Description

As a microkernel operating system, QNX is based on the "original idea" of running most of the OS in the form of a number of small tasks, known as servers. This differs from more traditional kernels, where the operating system is a single very large program with special abilities. In the case of QNX, the use of a microkernel allows the user (developers) to turn off any functionality they do not require, without having to change the OS itself.

The system is quite small, fitting in a minimal fashion on a single floppy, and is considered to be both very fast and fairly "complete."

Neutrino has been ported to a number of platforms and now runs on practically any modern CPU that is used in the embedded market. This includes the x86 family, MIPS, PowerPC, SH-4, and the closely related family of ARM, StrongARM and xScale CPUs.

A version for non-commercial use can be downloaded for free from the company web site.

External Links