QNX

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 22. Mai 2013 um 17:09 Uhr durch Itti (Diskussion | Beiträge) (Änderungen von 79.224.233.240 (Diskussion) auf die letzte Version von Addbot zurückgesetzt). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Zur Navigation springen Zur Suche springen
QNX
QNX-Logo
Entwickler Gordon Bell, Dan Dodge, Blackberry
Lizenz(en) Proprietär
Akt. Version 6.5.0 (13. Juli 2010)
Abstammung \ QNX
Architektur(en) MIPS, PowerPC, SH-4, ARM, StrongARM, XScale, x86
www.qnx.com/products/rtos

QNX ist ein proprietäres POSIX-fähiges unixoides Echtzeitbetriebssystem, das primär auf den Markt eingebetteter Systeme gerichtet ist.

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 und wird deshalb vor allem im englischen Sprachraum gelegentlich noch Kjunix ausgesprochen.

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.

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.

Seit dem 12. September 2007 ist der Quellcode des Kernels öffentlich zugänglich.[1] Der Entwicklungsprozess von QNX wird damit einsehbar. Das neue Lizenzmodell erlaubt zudem die kostenlose Nutzung des Betriebssystems für den nicht-kommerziellen Einsatz. Ebenfalls ermöglicht die neue Lizenz, den Kernel für eigene Zwecke zu verändern; jedoch darf diese Veränderung ohne schriftliche Genehmigung nicht weiter publiziert werden. Dies wird durch das von QNX entworfene Hybrid-Softwaremodell[2] festgeschrieben.

Am 9. April 2010 wurde von Research In Motion angekündigt, dass sie QNX von Harman International Industries kaufen.[3] Am 28. September 2010 veröffentlichte Research In Motion den Apple-iPad-Konkurrenten BlackBerry PlayBook, welches auf einer QNX-Neutrino-Architektur basiert, die hier als BlackBerry Tablet OS bezeichnet wird.

Beschreibung

Als ein Mikrokernel-Betriebssystem basiert QNX auf der Idee, den Großteil des Systems in Form von Prozessen laufen zu lassen. Dabei läuft jeder Prozess in einem eigenen, durch die MMU des Prozessors 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, wird der QNX-Microkernel über die MMU darüber informiert und beendet Prozess A, während Prozess B unberührt bleibt. Diese Fähigkeit ist das Hauptunterscheidungsmerkmal im Vergleich mit traditionelleren monolithischen 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 oder auch beliebige andere Systemteile) wegzulassen, ohne den Kernel überhaupt anfassen zu müssen.

Neutrino wurde auf viele weitere Architekturen portiert 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.

Quellen

  1. Bekanntmachung zur Veröffentlichung der QNX-Quelltexte
  2. http://www.qnx.com/company/hsm/ – Hybrid Software Model
  3. The Globe and Mail