QNX
QNX (gesprochen: Q-N-X oder Kjunix oder Knex) ist ein kommerzielles POSIX-fähiges unixoides Echtzeitbetriebssystem, das primär auf den "embedded system"-Markt gerichtet ist.
Geschichte
Noch als Studenten der University of Waterloo entschieden sich Gordon Bell und Dan Dodge 1980 ihr eigenes Echtzeitbetriebssystem mit Microkernel zu erstellen. Da sie nicht an Anwendersoftware interessiert waren, hielten sie sich vom Desktop-Markt fern. Sie gründeten Quantum Software noch in jenem Jahr, und brachten 1982 die erste Version (damals noch als QnX bezeichnet) für Intel 8088 CPUs heraus.
Als erstes wurde QnX als Betriebssystem für das Ontario Bildungssystems eigene Rechnerdesign, das Unisys ICON, gewählt. Ab dann breitete sich QnX schnell im "embedded" Markt aus und wurde auf verschiedene Plattformen übertragen.
Als man Ende der 90er erkannte, dass sich der Markt in Richtung von POSIX-Modellen orientierte, entschied man sich, den Kernel neu zu schreiben, um ihn auf einem niederen Niveau kompatibel zu machen. Nach Untersuchung verschiedener POSIX-Betriebssysteme, sollte die neue Version so nah wie möglich an Linux orientiert werden.
Das Resultat war QNX Neutrino (2001). Diese Version beinhaltet gewöhnlich eine integrierbare graphische Benutzeroberfläche (GUI), genannt Photon microGUI, eine Entwicklungsumgebung basierend auf verschiedenen GNU Werkzeugen und Internetsoftware (u.a. ein Browser (Mozilla oder Voyager) und Server). Außerdem begleitete das neue System ein Namenswechsel der Firma, jetzt bekannt als: QNX Software Systems.
Neutrino sollte als Basis eines neuen Amiga-Systems auftauchen. Diese Pläne wurden jedoch zugunsten eines eigenen PowerPC-basierten OS-Ansatzes aufgegeben (AmigaOne).
Beschreibung
Als ein Microkernel-Betriebssystem basiert QNX auf der "ursprünglichen Idee", den Großteil des Systems in Form kleiner "Aufgaben" (Tasks) auch bekannt als Server, laufen zu lassen. Das unterscheidet sie von traditionelleren Kerneln, wo das Betriebssystem ein großes Programm mit speziellen Fähigkeiten ist. Im Falle QNX erlaubt der Microkernel dem Nutzer (Entwickler), jegliche von ihm nicht benötigte Funktion abzuschalten ohne das System zu verändern.
Das System ist sehr klein (kann bei minimaler Ausstattung auch auf einer 1.44-Diskette untergebracht werden) und gilt trotzdem als sehr schnell und ziemlich "vollständig".
Neutrino wurde auf viele Plattformen übertragen und läuft heute auf fast jeder modernen CPU, die im "embedded"-Markt Anwendung hat. Das sind u.a. die x86- Familie, MIPS, PowerPC, SH-4, ARM, StrongARM und xScale.
Eine Version zur nicht-kommerziellen Nutzung kann von der Firmenseite heruntergeladen werden.
= Weblinks
=
== ==