QNX
aus Wikipedia, der freien Enzyklopädie
QNX (gesprochen: Q-N-X oder Kjunix oder Knex) ist ein proprietäres POSIX-fähiges unixoides Echtzeitbetriebssystem, das primär auf den Markt eingebetteter Systeme gerichtet ist.
[Bearbeiten] Geschichte
Noch als Studenten der University of Waterloo entschieden sich Gordon Bell und Dan Dodge 1980 ihr eigenes Echtzeitbetriebssystem mit Mikrokernel 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 mit der Bezeichnung QUNIX für Intel 8088 CPUs heraus. Kurz darauf wurde das Betriebssystem in QNX umbenannt.
Als erstes wurde QNX um 1985 als Betriebssystem für den Unisys ICON gewählt, den damaligen Standard-Arbeitsplatzrechner an Hochschulen in Ontario. In der Folgezeit breitete sich QNX hingegen schnell im Markt eingebetteter Systeme aus und wurde auf verschiedene Plattformen übertragen.
Als sich am Markt Ende der 1990er eine zunehmende Ausrichtung auf POSIX-Modelle abzeichnete, wurde der Kernel neu geschrieben, um ihn von Grund auf SMP- und POSIX-kompatibel zu machen. Nach Untersuchung verschiedener POSIX-Betriebssysteme entschied sich Quantum, die neue Version an Linux zu orientieren.
QNX Neutrino, das Resultat dieser Anstrengungen, wird seit 2001 von der inzwischen zu QNX Software Systems umbenannten Firma kommerziell angeboten. Diese Version beinhaltet gewöhnlich eine integrierbare graphische Benutzeroberfläche (GUI), genannt Photon microGUI, eine Entwicklungsumgebung basierend auf Eclipse, verschiedene GNU Werkzeuge und Internetsoftware (u. a. einen Browser (Mozilla bzw. Voyager) und einen HTTP-Server).
Neutrino sollte zeitweilig auch als Basis eines neuen Amiga-Systems Verwendung finden. Diese Pläne wurden von Amiga Inc. jedoch zugunsten eines eigenen PowerPC-basierten Betriebssystem-Ansatzes mit Namen Amiga OS4 (AmigaOne) aufgegeben.
QNX wurde am 27. Oktober 2004 Teil des Konzerns Harman International.
[Bearbeiten] Beschreibung
Als ein Mikrokernel-Betriebssystem basiert QNX auf der Idee, den Großteil des Systems in Form kleiner "Aufgaben" (Tasks) auch bekannt als Server, laufen zu lassen. Dabei läuft jeder Task bzw. Prozess in einem eigenen, geschützten Speicherbereich - egal ob es sich dabei um eine Applikation oder um einen Treiber handelt. Dies erleichtert Entwicklern die Fehlersuche: Versucht Prozess A versehentlich Daten oder Code von Prozess B zu überschreiben, merkt der QNX-Microkernel dies sofort und gibt eine entsprechende Meldung aus. Prozess A wird beendet, Prozess B bleibt unberührt. Diese Fähigkeit ist das Hauptunterscheidungsmerkmal im Vergleich mit 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 Funktionalität (z.B. Audio, Grafik aber auch beliebige andere Systemteile) wegzulassen, ohne den Kernel überhaupt anfassen zu müssen.
Das System ist sehr klein (kann bei minimaler Ausstattung auch auf einer 1,44-MB-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 Markt eingebetteter Systeme Anwendung findet. 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. Aktuell ist die Version 6.3.
[Bearbeiten] Weblinks
- QNX Software Systems (Hauptseite)
- QNX Deutschland
- Open QNX Portal (News und Foren)
- BitCtrl - QNX Support und Consulting
- HILF IT Services
- Triadem - QNX Distribution Schweiz
- IBV - Ingenieurbüro Vollbracht: QNX Partner für Engineering Services und Produkte
- Toradex Colibri - XScale PXA270 basiertes Computermodul mit QNX
- Carnica - QNX Distribution Österreich
- Steinhoff Automation - Feldbus-Support für QNX, DACHSview, IEC1131
- Download der QNX4 Demo Diskette (ganz unten)