# Unicos

UNICOS ist ein kommerzielles Unix-Betriebssystem des Supercomputerherstellers Cray Inc und für den Betrieb von Vektor-Großrechnern konzipiert.

## Geschichte
### COS und CX-OS

Im Jahr 1985 brachte das Unternehmen Cray Research (später Cray Inc) den Vektorsupercomputer Cray-2 als Weiterentwicklung des Cray-1 auf den Markt. Da große Teile des bis dahin verwendeten Cray Operating System (COS) in Assembler programmiert waren, entschloss man sich frühzeitig für eine günstigere und schnellere Portierung des weitgehend in C programmierten UNIX System V Release 2 als Grundlage für die neuen Cray-2 Systeme. So konnte bereits 1984 die erste Version des neuen UNIX-Betriebssystems CX-OS fertiggestellt werden, welche die Cray X-MP unterstützte. Zu diesem Zeitpunkt handelte es sich jedoch vorwiegend noch um ein Demonstrationssystem für die Möglichkeiten eines UNIX-Betriebssystems für Großrechner.

### UNICOS

Mit der Einführung der Cray-2 wurde das System in UNICOS (UNIx Cray Operating System) umbenannt und am 3. April 1986 in der Version 1.0 für den Betrieb von Cray-1M, Cray-1S, Cray X-MP und Cray-2 Systemen freigegeben.
Über die nächsten Jahre und zehn Versionen hinweg entwickelte sich UNICOS zu einem UNIX basierten Großrechnersystem mit vollständiger Ressourcen- und Benutzerkontrolle, Multilevel security (MLS), Multithreading, wissenschaftlichem Hochleistungsrechnen und vollständiger POSIX-Konformität. Die Schwerpunkte lagen vor allem bei Performance und Skalierbarkeit, was jedoch zu Ungunsten der Flexibilität ging, und so musste lange Zeit bei einer Dateisystem-Änderung ein kompletter Neustart durchgeführt werden.

### UNICOS/MAX und UNICOS/mk

Mit der Einführung des Cray T3D hielt 1993 erstmals das Massively Parallel Processing (MPP) Einzug in die Produktlinie des Unternehmens. Hierfür wurde das System in zwei wesentliche Bestandteile zerlegt. Das Frontend, ein Vektorrechner unter UNICOS betrieben, war für die Eingabe und Ausgabe zuständig und versorgte das Backend, welches aus einer Vielzahl von Processing Elements (PEs bzw. Nodes) bestand und die eigentlichen Rechenarbeiten übernahm. Die PEs im Backend wiederum wurden mit dem Microkernel System UNICOS/MAX betrieben.
Mit zunehmender Zahl an Prozessoren in den Systemen gewann es immer mehr an Bedeutung, auch die Verwaltung der Systemaufrufe auf mehrere Prozessoren (sogenannte System-Nodes) zu verteilen, um keine Wartezeiten in Kauf nehmen zu müssen. Das Ergebnis war UNICOS/mk, ein Mikrokernel-basiertes, verteiltes Betriebssystem, welches von dem Echtzeitbetriebssystem ChorusOS abstammte und seit 1995 mit der Cray T3E ausgeliefert wurde.

### UNICOS/mp und UNICOS/lc

Einige Zeit nach der Fusion zwischen Cray Research und SGI wurde im Jahr 2003 unter dem Namen UNICOS/mp ein von früheren Versionen größtenteils unabhängiges Betriebssystem eingeführt. Dieses ist zwar ebenfalls ein Mikrokernel-basiertes, verteiltes Betriebssystem, stammt aber von IRIX 6.5 ab. Eingesetzt wurde es seitdem auf den Systemen der Cray-X1- und der Cray-X1E-Serie. Die aktuelle Version 3.1 von UNICOS/mp wurde 2006 freigegeben.
Darüber hinaus entstand in den folgenden Jahren UNICOS/lc, eine Mischung aus Catamount (basiert auf Cougar, das auf ASCI Red verwendet wurde) für die Berechnungsbestandteile und GNU/Linux für die Servicebestandteile. Eingesetzt wird es auf Systemen der Cray-XT3-Serie.