ChorusOS

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
ChorusOS
Logo Chorus Systems 1171566860225.jpg
Basisdaten
Entwickler Chorus Systèmes S.A.
Sun Microsystems, Inc.
Sprache(n) Englisch
Aktuelle Version 5.1
Abstammung CHORUS-V0\-V1\-V2\-V3
Kernel Mikrokernel
Architekturen x86, 68k, PPC, SPARC, ARM, MIPS
Lizenz Sun Public License-Lite Version 1.0 (the „License“)
GNU General Public License (GPL)
Mozilla Public License
FreeBSD license
Website ChorusOS 5.0
Kompatibilität ANSI\POSIX\Unix System V

ChorusOS ist ein Echtzeitbetriebssystem. Das Design und die Technologie ermöglicht das Bauen offener, verteilter und skalierbarer Betriebssysteme. Das Architekturmuster der Softwarearchitektur bildet mit den Kategorien Verteilte Systeme, Adaptive Systeme und Chaos zu Struktur eine Schnittmenge. Die Schnittmenge der drei Kategorien bezeichnet ChorusOS als Kommunikation. Der Nucleus Mikrokernel stellt, für Systemprogrammierer zugänglich, Echtzeitdienste zur Verfügung. Die modulare Architektur unterstützt die Skalierbarkeit und erlaubt die dynamische Konfiguration des Systems und der Anwendungen.[1]

Geschichte[Bearbeiten]

Die im Internet zugänglichen und veröffentlichten Dokumente geben mehrheitlich das Jahr 1979 als Gründungsdatum einer mit der Entwicklung einer Software beauftragten Projektgruppe am staatlichen Institut für Forschung, Informatik und Automatisierung, dem „Institut national de recherche en informatique et en automatique“ an. Aus dieser Software ging, unter dem Gesichtspunkt eines Lebenszyklus für Software, später das kommerzielle Produkt ChorusOS hervor.[2]

Ein weiteres Forschungsprojekt das am staatlichen Institut INRIA lief war Sol. Dieses Pilotprojekt hatte das Ziel, die Mehrbenutzer-Betriebssystem-Umgebung UNIX, komplett in Pascal auf französischen Computersystemen, einschließlich dem , HB Level 6, Centre national d'études des télécommunications SM90 (68000) System umzusetzen.[3][4][5] Im Jahre 1984 war die Fusion der Forschungsprojekte zu einem größeren Team: Mitglieder aus dem Forschungsprojekt Sol schlossen sich dem Forschungsprojekt Chorus an und brachten Ihre Erfahrungen hier mit ein.[6] Das Ergebnis der Entwicklung waren drei Versionen, bezeichnet als CHORUS-V0, CHORUS-V1 und CHORUS-V2.[7][8] In das Projekt Chorus research project gingen Forschungsergebnisse und Systemerfahrungen aus den Projekten Cyclades und ÉSOPE ein.[9]

CHORUS-V0 (1980–1982)[Bearbeiten]

Die erste Version experimentierte mit drei Hauptkonzepten:

  • dem des Akteurs, dessen sequentielle und unsichtbare Operationen in Phasen der Ausführung und der Kommunikation verliefen
  • der verteilten Anwendung als Ensemble von unabhängigen Akteuren
  • dem kleinen Nucleus, ein einfacher und zuverlässiger, leicht an jeden Ort zu verteilender Mikrobaustein[10]

CHORUS-V1 (1982–1984)[Bearbeiten]

Die zweite Version verschob den Prototypen hin zu einem Echtsystem. Das Design hatte ein paar Änderungen im Vergleich zu CHORUS-V0:

  • zum einen die Einführung von strukturierten Nachrichten, um Protokolle einzubetten
  • zum anderen das Konzept der aktivierenden Nachricht, deren Dateninhalt der Kontext für eingebettete Berechnungen und der Graph für zukünftige Berechnungen waren

CHORUS-V2 (1984–1986)[Bearbeiten]

Die Anpassung an das Mehrbenutzer-Betriebssystem zwang zur Umgestaltung der CHORUS Schnittstelle und zur Änderung der System-Akteure.[11] Die Version CHORUS-V2, bot die Möglichkeit an, das Mehrbenutzer-Betriebssystem und die Kernelarchitektur im Gesamten zu überdenken. Mit dem Respekt für die zwei Konzepte:[12]

  • Modularität: Aufteilung der Mehrbenutzer-Betriebssystem Dienste in verschiedene, unabhängige Akteure[13]
  • Verteilung: Verwaltung der Objekte der System-Akteure, wie Dateien und Prozesse, verteilt über CHORUS als Dienste[14]

CHORUS-V3 (1987–1997)[Bearbeiten]

Anfang 1987 gründeten Hubert Zimmermann und Michael Gien das französische Unternehmen Chorus Systèmes Société anonyme als eine Aktiengesellschaft nach dem französischen Handelsrecht von 1867. Unter anderem veröffentlichte das kleine Team als Ergebnis dieser Arbeitsphase die Version CHORUS-V3. Im Jahre 1989 folgte dann die Veröffentlichung von Chorus/MIX V3.2. Es handelte sich hierbei um ein verteiltes System mit Unterstützung von Echtzeit und binärer Kompatibilität zu SCO Systemen und Intel basierenden Maschinen.

ChorusOS[Bearbeiten]

Im Quartalsbericht 10-Q des US-amerikanischen Unternehmens Sun Microsystems aus Kalifornien war die Übernahme der Chorus Systèmes Société anonyme beschrieben. Am 21. Oktober 1997 wechselten alle Aktien und Passiva, sowie alle Niederlassungen für eine Summe von 26,5 Millionen US-Dollar in Bargeld die Besitzerin. Eine Abschreibung von 13 Millionen US-Dollar kam für die Integration, Forschung und Entwicklung hinzu.[15]

Damit übernahm Sun Microsystems das Echtzeitbetriebssystem von Chorus Systèmes Société anonyme und benannte es in ChorusOS um. Bei Sun Microsystems bekam es im Jahr 2002 den Status EOL. Damit war der Lebenszyklus des Produkts offiziell beendet. Das bedeutete, dass ihm keine weitere Unterstützung mehr zukam. Der letzte Quellenbaum von ChorusOS, die Weiterentwicklung des Release 5.1, hatte seine Veröffentlichung als Chorus Open Source[16] durch Sun Microsystems auf der Website von Experimentalstuff.

Wirtschaftliche Schwierigkeiten infolge der Dotcom-Blase veranlassten auch das Unternehmen Sun Microsystems, im Jahr 2002 Maßnahmen zur Kostensenkung einzuleiten. Eine Maßnahme war der irreversible Schritt, den Lebenszyklus des Produkts ChorusOS zu beenden. Die Veröffentlichung von Teilen der Quellen des ChorusOS als Open Source erfolgte dann auf der Website von Sun Labs. Das Startup Jaluna S.A. gründeten im Jahr 2002 ehemalige Chorus Systèmes S.A. Mitarbeiter. Die nach der Übernahme von Chorus Systèmes S.A. durch das Unternehmen Sun Microsystems in der neu entstandenen Abteilung für eingebettete Systemsoftware tätig waren, und die das Unternehmen Sun Microsystems nach dem irreversiblen Schritt im August 2002 verließen.

Das Unternehmen Jaluna hörte mit der Übernahme durch das Unternehmen VirtualLogix auf zu existieren. Mit dem Unternehmen VirtualLogix kam der neue Name VirtualLogix C5 für das ChorusOS hinzu. Um die Chancen von C5 am Markt der Echtzeitbetriebssysteme zu verbessern, gab das Unternehmen VirtualLogix dem C5 die Bezeichnung eingebettetes System unter dem Betriebssystem Linux und dem Echtzeitbetriebssystem ChorusOS, mit der Funktionalität einer carrier-grade class Software-Plattform. Sun Microsystems vertreibt Carrier-Grade Server mit verschiedenen Betriebssystemen. Das Unternehmen VirtualLogix hörte im September 2010 mit der Übernahme durch das Unternehmen Red Band Software auf zu existieren.

Die Veröffentlichung der vollständigen Quellen aus dem Jaluna Projekt war der Release von Jaluna-1.[17] Hier kam dann die Umschreibung hinzu, eine RT-POSIX-Schicht zu sein, die auf FreeBSD 4.1, und der Entwicklungsumgebung CDE basiert.

Beschreibung[Bearbeiten]

Mit der Zeit änderte sich die Ausrichtung der Entwicklung weg von verteilten Aspekten hin zu Echtzeit und Modularisierung (Komponentisierung). Die Spezifikation des verteilten Betriebssystemkern von Release CHORUS-V3 erfolgte ansatzweise mit der Beschreibungssprache für Ereignisreihenfolgen LOTOS. Eine Beschreibungssprache, die die International Organization for Standardization als Standard ISO 8807:1989 im Jahre 1989 veröffentlicht hatte. Objektiv gesehen kam es zu der Initiative bei der Aktualisierung von CHORUS V2 zu CHORUS V3.[18] Die Entscheidung mit LOTOS zu experimentieren begründet Charles Pecheur als den Test der Adäquanz von LOTOS für die Spezifikation der Betriebssysteme, durch Spezifizierung der Basisstrukturen und Funktionalitäten des verteilten Betriebssystem CHORUS V3.[19] Der Ansatz war von experimenteller Natur, die Validierung des realen Systems war dabei nicht essentiell.

Beispiel für die Spezifikation[Bearbeiten]

ISO/OSI Sitzungsprotokoll
Spezifikation Figur
specification CHORUS_kernel [TSAP,monitor,trap] (…) : noexit :=
… (* Definition der Datentypen *)
behaviour
hide transport,IPC,local in
(   (   (   (   local_call_dispatcher [trap,IPC,local] (…)
(* Empfangen der lokalen Aufrufe,
     Aufrufe des lokalen Kernel oder 
      Senden der Nachrichten an einen anderen Kernel *)
    |   |   | 
                remote_call_dispatcher [IPC,local] (…) )
(* Empfangen der Nachrichten des entfernten Kernel,  
    Aufrufe der lokalen Kernel wenn erforderlich *)
            |[local]|
              local_kernel [monitor,IPC,local] (…) )
(* Abhandlung der lokalen CHORUS objects *)
        |[IPC]|
          IPC_manager [transport,IPC] (…) )
(* Abhandlung der lokalen Kommunikation, 
    Weiterleitung der Nachrichten zum Netzwerk Manager, 
     wenn das Ziel entfernt liegt *)
    |[transport]|
      network_manager [TSAP,transport] (…) )
(* Abhandlung der Kommunikation mit anderen Standorten *)
where
(* Prozess Definitionen *)
endspec

Fig.5.png

Architektur[Bearbeiten]

Je nach Konfiguration besteht eine vorhandene ChorusOS-Betriebssysteminstanz aus einem Mikrokernel und verschiedenen Akteuren. Die verschiedenen Akteure tragen zur Umsetzung der ausgewählten Dienste bei. ChorusOS selbst ist dabei in zwei unterschiedliche Schichten unterteilt, wobei eine dritte Schicht mit den Anwendungen kommuniziert.[20]

The architecture of ChorusOS.png

Mikrokernel[Bearbeiten]

Die Beschreibungen des Mikrokernels sind in den veröffentlichten Dokumenten unterschiedlich. Im technischen Bericht „CS/TR-90-25.1, 1990“ wird zum Mikrokernel erklärt, der Chorus Nucleus verwaltet auf der tiefsten Ebene die physikalischen Geräte an einem Ort. Auf der höchsten Ebene stellt er Standort-transparente Kommunikationsmechanismen zwischen den Prozessen bereit. Er ist zusammengesetzt aus vier Hauptkomponenten, die lokale und globale Dienste unterstützen.[21] Die Hauptkomponente in der tiefsten Ebene, der Kontrolleur, „CHORUS supervisor“. Die darauf aufsetzenden zwei Hauptkomponenten, die Echtzeit-Exekutive, „CHORUS real-time executive“ und der Verwalter des virtuellen Speichers, „CHORUS virtual memory manager“. Die Hauptkomponente auf der höchsten Ebene, der Verwalter der Interprozesskommunikation, „CHORUS inter-process communication manager“

Die Dokumentation verwendet an einzelnen Stellen für die Abbildung der Details des Mikrokernels unterschiedliche Darstellungsformen.

Abbildung 1. – The CHORUS Nucleus

Real-Time Executive

Communications
(Portable)

Memory Management

(Portable) (Portable)
Supervisor
(Machine dependent)
(Machine dependent)
Hardware

Abbildung 2. – The CHORUS Nucleus

Real-Time Executive

Communications
(Portable)

Memory Management

(Thread Scheduling) (Linear, segemented or
page virtual memory)
[Portable] [Portable]
Supervisor
(Interrupts, exeptions and trap handling)
[Machine dependent]
[Machine dependent]

In dem Dokument „Programming under ChorusOS“ wird zum Mikrokernel erklärt, die core-executive unterstützt die Basisdienste der tiefsten Ebene, korrespondierend zum KERN Akteur. Bei den Dienstanforderungen der Echtzeit-Anwendungen, der Verwaltung der Akteure, den Zeitabläufen, der Zeitplanung, dem Speicher, der Synchronisation, den Überkreuz Akteuraufrufen (LAPs) und so weiter.[20]

Implementierung[Bearbeiten]

Als eingebettetes System auf einer Reihe von Prozessor-Architekturen und Hauptplatinen Systeme mit Peripherie:

  • Intel Corporation x86 wie i386/i486/Pentium (verschiedene PC/ATs)
  • Microsoft Windows NT upgrade, einschließlich POSIX Cygwin tools,[22] Ziele Motorola PowerPC 60x und 750 Prozessor Familie (ppc60x)
  • Motorola PowerPC 60x und 750 Prozessor Familie (ppc60x)
  • MPC8xx (Motorola PowerPC: MPC860, MPC821 und MPC823) Prozessoren[23]
  • MPC8xxADS (Motorola SPS: MPC860 FADS, MPC821 FADS und MPC823 FADS) Hauptplatinen Systeme[23]
  • MPC8xxADS (Motorola SPS: MPC860 FADS, MPC821 FADS [cpu, flash, quicc-8xx]) Hauptplatinen (integrierte) Peripherie[24]
  • MPC8xxADS (Motorola SPS: MPC823 FADS [cpu, flash, quicc-8xx]) Hauptplatinen (integrierte) Peripherie[24]
  • Motorola mc68030/mc68360/mc68040 (MVME147S, QUADS, MVME167S)
  • Motorola mc88k
  • Sun Microsystems UltraSPARC IIi, SPARC (SPARCstation SLC, SPARCstation Classic)
  • Transputer T425/T805
  • R3000/R4000 (Sony 3410)
  • PA-RISC (HP 9000/834 and 9000/720)
  • YMP (Cray YMP), Cray T3E

Funktionalität[Bearbeiten]

Die Funktionalitäten vom ChorusOS waren zu den folgenden Internationalen Standards konform:

  • ANSI
  • POSIX 1003.1b/.1c und z. B. Vorgängerschnittstellen .4 und .4a. (Die Organisationen IEEE und The Open Group haben seit 2007 die offizielle Zertifizierung[25] der POSIX-Funktionalität übernommen.)
  • Unix System V (R3.2 or R4.0)

Subsysteme[Bearbeiten]

Die Subsysteme vom CHORUS bestanden aus den folgenden Komponenten:

  • CHORUS/Micro, sehr kleiner (10K), harte Echtzeit unterstützender eingebetteter Kernel (hard real-time embedded kernel), zum größten Teil (90 %) in C++ implementiert.
  • CHORUS/ClassiX, Ziel-System Entwicklungsumgebung (host-target cross-development environment) für die in C++/C geschriebenen Anwendungen, auch C_actors genannt.
  • CHORUS/MiX V.4, verteilte, Multi-Server-Implementierung von Unix SVR4, in der Ebene über dem CHORUS Mikrokernel.
  • CHORUS/COOL, der CHORUS/C++ Object Oriented Layer. Mit der Bibliothek COOL, einer von Texas Instruments in den Jahren von 1989 bis 1990 entwickelten C++ Bibliothek war die Möglichkeit gegeben, das verteilte Betriebssystem CHORUS um die zusätzliche Funktionalität zu erweitern, objektorientierte Umgebungen zu unterstützen. Diese zusätzliche Funktionalität ist in einer Ebene auf dem Mikrokernel CHORUS V3 Nucleus realisiert. Und eine Erweiterung der CHORUS Schnittstelle um generische Funktionen für das Objekt-Management, wie der Erstellung, der Löschung, der Speicherung, dem Fernzugriff und der Migration. Ein wesentliches Ziel dieser Herangehensweise war es, die Machbarkeit von generellem Objekt-Management auf der Ebene des Mikrokernel mit Unterstützung von mehreren Objektmodellen auf höherer Ebene zu untersuchen. Die Implementierung von COOL sowie die erste Evaluierung dieser Herangehensweise realisierte man mit einer C++-Umgebung, die den COOL Mechanismus unterstützt.
  • CHORUS/COOL-ORB, OMG-CORBA kompatibler Object Request Broker.
  • CHORUS/JaZZ, ist eine Implementation der Java-Laufzeitumgebung und ausgewählter Komponenten vom JavaOS, die in CHORUS/ClassiX integriert wurden um das Betriebssystem zu personalisieren.[26] Bei Sun Microsystems ist der Einsatz der CVM mit der Java 2 Platform, Micro Edition und dem CDC Profile für die Version ChorusOS 5.0 belegt.[27]
  • CHORUS/Harmony, C++/C und eingebettetes C++, Übersetzer und Werkzeugkette aus Assemblern, Linkern, Hilfsprogrammen (assemblers, linkers, utility programs) und Profilern, Laufzeitfehlerprüfern, Simulatoren und Kernel Debuggern (profilers, runtime error checkers, simulators and kernel debuggers).

Quellen[Bearbeiten]

  • „A Comparison of Three Microkernels“, Andrew S. Tananbaum, Englisch, The Journal of Supercomputing, vol 9, number 1, ISSN 0920-8542, 1995
  • „A Comparison of Two Distributed Systems: Amoeba and Sprite“, Douglis, F., Kaashoek, M.F., Tanenbaum, A.S., Englisch, Computing Systems, vol. 4, Fall 1991 (sic)
  • „Architectural Issues in Microkernel-based Operating Systems: the CHORUS Experience“, Bricker, A., Glen, M., Guillemont, M., Lipkis, J., Ofr, D., and M. Rozier, Englisch, Computer Communications, Vol 14, No 6, pp 347–357, July 1991
  • „Architectural issues in microkernel-based operating systems: the CHORUS experience.“, Bricker. A., M. Gien, M. Guillemont, J. Lipkis. D. Orr, M. Rozier, Englisch, Special Issue of Computer Communications on Platforms for Distributed Applications, Vol. 14 No. 6, July 1992, Pages 347-357
  • „CHORUS/COOL-ORB Programmer's Guide“, Chorus Systèmes, Englisch, Technical Report CS/TR-96-2.1, Chorus Systèmes, 1996
  • „COOL: system support for distributed programming”, Lea, R., Jacquemot. C., Pillevesse, E., Englisch, Communications of the ACM, Volume 36 , Issue 9 Pages: 37 - 46 (September 1993)
  • „COOL-2: An Object Oriented Support Platform built above the Chorus Micro-Kernel.“, Lea, R. Amaral. P., Jacquemot. C., Englisch, Proceedings of First International Workshop on Object Orientation in Operating Systems, October 17-18, 1991. Palo Alto, California. IEEE Computer Society Press USA
  • „Data Movement in Kernelized Systems“, R. Dean, F. Armand, Englisch, Proceedings of the USENIX Workshop on Micro-Kernels and Other Kernel Architectures, pp. 243–261, April 1992
  • „Distributed Systems, Concepts and Design“, G. Coulouris, J. Dollimore, T. Kindberg, Englisch, Addison-Wesley, second edition, 1994
  • „ÉSOPE: une étape de la recherche française en systèmes d'exploitation (1968-1972)“, Claude Bétourné, Jean Ferrié, Claude Kaiser, Sacha Krakowiak, Jaques Mossière, Englisch/Französisch, Article publié danns les Actes du 9-ème Colloque sur l'histoire de l'informatique et des télécommunications (CHIR 2004), Rennes, 16-18 novembre 2004
  • „Extending tile Chorus Micro-kernel to Support Continuous Media Applications“, Coulson, G., Blair, G.S., Robin, P., Shepherd, D., Englisch, Proc. Fourth International Workshop on Network and Operating System Support for Digital Audio and VMeo, Lancaster House Hotel, Lancaster, UK, published by Springer Verlag, ISBN 3-540-58404-8, October 93
  • „Implementing a modular object-oriented operating system on top of Chorus”, Lea, R. Amaral. P., Jacquemot, C., Englisch, IEE Distributed Systems Engineering Journal 1(1): 11-18 (1993)
  • „Modern Operating Systems“, Andrew S. Tanenbaum, Englisch, Prentice-Hall, 1992
  • „Process Management and Resource Sharing in the Multiaccess System ESOPE“, Claude Bétourné, Jacques Boulenger, Jacques Ferrié, Claude Kaiser, Sacha Krakowiak, and Jacques Mossière, Englisch, Communications of the ACM, vol. 13, no. 12, (December 1970).
  • „Programming under ChorusOS“, Jean-Marie Rifflet, Englisch, University Paris VII - Denis Diderot, November 14, 2000
  • „The COOL architecture and abstractions for object-oriented distributed operating systems“, Lea, R., Jacquemot. C., Englisch, Proceedings of 5th ACM SIGOPS European Workshop, September 21-23, 1992, Mont St Michel, France
  • „The CYCLADES Computer Network - Towards Layered Network Architectures“, Louis Pouzin et al., Englisch, Monograph Series of the ICCC, 2, Elsevier Publishing Company, Inc, New-York, NY, (1982), 387 p. ISBN 0-444-86482-2
  • „The Design of a QoS Controlled ATM Based Communications System in Chorus“, Coulson, G., Campbell, A., P. Robin, Blair, G.S., Papathomas, M., Shepherd, D., Englisch, IEEE Journal on Selected Areas in Communications, Special issue on ATM LANs, 1994
  • „The Impact of Operating System Structure on Memory System Performance“, J Bradley Chen, Brian N Bershad, Englisch, ACM SIGOPS Dec. '93
  • „The SOL Operating System“, Michel Gien, Englisch, Usenix Summer’83 Conference, Toronto, ON, (July 1983), pp. 75–78.
  • „Using LOTOS for specyfing the CHORUS Distributed Operating System Kernel“, Charles Pecheur, Englisch

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. Abstrakt:  Marc Rozier, Vadim Abrossimov u.a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), ABSTRACT, S. 1 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  2. Hintergrund und Frühforschung, 2. Kapitel, 1. Absatz, 1. Satz:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2. BACKGROUND AND RELATED WORK, S. 3 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  3. Frühforschung, 2. Kapitel, 1. Unterkapitel, 2. Absatz, 1. Satz:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2.1 Early Research, S. 3 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  4. Forschungsberichte, 1. Kapitel, 2. Unterkapitel, 1. Unterkapitel, 1. Absatz, 1. Satz:  Kevin G. Pammett, I.N.R.I.A. Centre de Rocquencourt (Hrsg.): Final Report on Research Activities or "Fifteen Months at INRIA". RR-0310, Mai 1984 (Originaltitel: Mouse-Driven Menu Interfaces for Software Tools On A Bitmap UNIX System), 1.2.1 The Sol Project, S. 4/156 (http://hal.archives-ouvertes.fr/docs/00/07/62/47/PDF/RR-0310.pdf).
  5. Forschungsberichte, 1. Kapitel, 2. Unterkapitel, 1. Unterkapitel, 1. Absatz, 1. Satz:  Kevin G. Pammett, I.N.R.I.A. Centre de Rocquencourt (Hrsg.): Final Report on Research Activities or "Fifteen Months at INRIA". RR-0310, Mai 1984 (Originaltitel: Mouse-Driven Menu Interfaces for Software Tools On A Bitmap UNIX System), 1.2.1 The Sol Project, S. 4/156 (http://hal.inria.fr/docs/00/07/62/47/PDF/RR-0310.pdf).
  6. Frühforschung, 2. Kapitel, 1. Unterkapitel, 2. Absatz, 2. Satz:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2.1 Early Research, S. 3 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  7. Hintergrund und Frühforschung, 2. Kapitel, 1. Absatz, 2. Satz:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2. BACKGROUND AND RELATED WORK, S. 3 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  8. Hintergrund und Frühforschung, 2. Kapitel, 1. Absatz, 2. Satz:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2 BACKGROUND AND RELATED WORK, S. 3 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  9. Frühforschung, 2. Kapitel, 1. Unterkapitel, 1. Absatz, 1. Satz:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2.1 Early Research, S. 3 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  10. Nucleus, 1. Kapitel, 1. Unterkapitel, 4. Absatz, 1. Satz:  SGS THOMSON MICROELECTRONICS (Hrsg.): ST9040. 1994 (Originaltitel: 8 BIT 16K HCMOS MCUS WITH EEPROM/RAM AND A/D CONVERTER), 1.1 General Description, S. 5/57 (http://www.ecorelocation.de/dokumente/8-BIT-16K-HCMOS-MCUS-WITH-EEPROM-RAM-AND-AD-CONVERTER.pdf).
  11. V2, 2. Kapitel, 4. Unterkapitel, 1. Absatz, 1. Satz:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2.4 CHORUS-V2 (1984-1986), S. 4 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  12. V2, 2. Kapitel, 4. Unterkapitel, 2. Absatz, 1. Satz:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2.4 CHORUS-V2 (1984-1986), S. 4 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  13. V2, 2. Kapitel, 4. Unterkapitel, 1. Aufzählung, 1. Punkt:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2.4 CHORUS-V2 (1984-1986), S. 4 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  14. V2, 2. Kapitel, 4. Unterkapitel, 1. Aufzählung, 2. Punkt:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 2.4 CHORUS-V2 (1984-1986), S. 4 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  15. Subsequent Events, PART I, ITEM 1:  SEC (Hrsg.): Quarterly report [Sections 13 or 15(d)]. 1997 (Originaltitel: Quarterly report [Sections 13 or 15(d)]), SUBSEQUENT EVENTS, S. 7/7 (http://www.sec.gov/Archives/edgar/data/709519/0000950005-97-000914.txt).
  16. Chorus Open Source
  17. Jaluna auf SourceForge
  18. Introduction, 1. Kapitel, 5. Absatz, 1. Satz:  Charles Pecheur: Using LOTOS for Specyfing the CHORUS Distributed Operating System Kernel. (Originaltitel: Using LOTOS for Specyfing the CHORUS Distributed Operating System Kernel) 1. Introduction, S. 2.
  19. Abstract, 1. Absatz, 1. Satz:  Charles Pecheur: Using LOTOS for Specyfing the CHORUS Distributed Operating System Kernel. (Originaltitel: Using LOTOS for Specyfing the CHORUS Distributed Operating System Kernel) Abstract, S. 1 (http://www.ecorelocation.de/dokumente/RUN-PP92-01.ps).
  20. a b Die Architektur des ChorusOS, 1. Kapitel, 6.1 Unterkapitel, 1. Absatz:  Jean-Marie Rifflet, Université Paris 7 - Denis Diderot (Hrsg.): Programming under ChorusOS. 14. November 2000 (Originaltitel: Programming under ChorusOS), 1.6.1 Overview, S. 8f (http://www.ecorelocation.de/dokumente/Programming-under-ChorusOS.ps).
  21. Mikrokernel, 3. Kapitel, 1.1.1 Unterkapitel, 1. Absatz:  Marc Rozier, Vadim Abrossimov u. a., Chorus Systèmes (Hrsg.): Overview of the CHORUS® Distributed Operating Systems. CS/TR-90-25.1, 1. Februar 1991 (Originaltitel: Overview of the CHORUS® Distributed Operating Systems), 3.1.1.1 The CHORUS Nucleus, S. 7 (http://www.ecorelocation.de/dokumente/CS-TR-90-25.1.pdf).
  22. ChorusOS 4.0 Installation Guide for Windows NT Hosts, 2. Kapitel, 1. Absatz, 2. Unterabsatz, 1. Satz:  Sun Microsystems, Inc., Sun Microsystems, Inc. (Hrsg.): ChorusOS 4.0 Installation Guide for Windows NT Hosts. November 1999 (Originaltitel: ChorusOS 4.0 Installation Guide for Windows NT Hosts), Chapter 2. Installing on the Host, S. 11 (http://dlc.sun.com/pdf/806-3716/806-3716.pdf).
  23. a b Geräte Referenz, Prozessor Referenz und BSPs, 1. Kapitel,  Sun Microsystems, Inc. (Hrsg.): ChorusOS 4.0 MPC8xx Target Family Guide. 806-3964-10, Dezember 1999 (Originaltitel: ChorusOS 4.0 MPC8xx Target Family Guide), 1. ChorusOS 4.0 MPC8xx Target Family Guide, S. 16 (http://www.ecorelocation.de/dokumente/806-3964-10.pdf).
  24. a b Geräte Referenz, Prozessor Referenz und BSPs, 1. Kapitel,  Sun Microsystems, Inc. (Hrsg.): ChorusOS 4.0 MPC8xx Target Family Guide. 806-3964-10, Dezember 1999 (Originaltitel: ChorusOS 4.0 MPC8xx Target Family Guide), 1. ChorusOS 4.0 MPC8xx Target Family Guide, S. 17 (http://www.ecorelocation.de/dokumente/806-3964-10.pdf).
  25. Zertifizierung
  26. Übersicht, 3. Kapitel, 3.1 Unterkapitel, 5. Absatz:  Philippe Robin, Chorus Systèmes (Hrsg.): comp.os.chorus Frequently Asked Questions (FAQ). 1.32, 2. Februar 1998 (Originaltitel: comp.os.chorus Frequently Asked Questions (FAQ)), 3. Chorus Product Offering (http://www.ecorelocation.de/dokumente/comp.os.chorus.FrequentlyAskedQuestions(FAQ).txt).
  27. CVM(5FEA):  Sun Microsystems (Hrsg.): ChorusOS 5.0. 5.0, 10. Dezember 2001 (Originaltitel: CVM(5FEA) - C Virtual Machine component for Java applications (ChorusOS man pages section 5FEA: ChorusOS Features and APIs)), Reference Manual Collection (http://docs.sun.com/app/docs/doc/816-0349/6m6rfpkag?a=view).