Trotz Erweiterungen ist Sorix 386486 konform zu System V.4

Echtzeit-Unix auch für PCs in industriellen Anwendungen

07.08.1992

*Heinz Eisenbeiß ist Produktmanager im Bereich Automatisierungstechnik der Siemens AG, Nürnberg.

Längst finden sich PCs auch im industriellen Einsatz. Ihre inzwischen beachtliche Rechenstärke können sie allerdings erst mit einem leistungsfähigen Betriebssystem wie Unix entwickeln - was bisher an dessen Mängeln hinsichtlich der Echtzeitfähigkeit litt. Heinz Eisenbeiß* beschreibt eine zu System V, Release 4, kompatible Siemens-Entwicklung, die PCs, Unix und Echtzeitfähigkeit unter einen Hut bringt.

Ähnlich der Bürowelt existiert auch im industriellen Einsatz eine Vielzahl unterschiedlicher Hardwaresysteme nebeneinander. Diese reichen von prozeßnahen Front-end-Systemen bis hin zu Planungs- und Dispositionsrechnern. Das bedeutet, daß auch hier die Forderungen nach Durchgängigkeit und Standards ganz oben stehen und insbesondere dem Thema Vernetzung überragende Bedeutung zukommt.

Speziell in der Automatisierungstechnik schied bisher der Einsatz von Unix vor allem wegen der fehlenden Echtzeitfähigkeit aus. Das heißt, man mußte für zeitkritische Front-end-Lösungen weiterhin dedizierte Echtzeit-Kernel einsetzen, die die Forderungen nach Standards oft nur mangelhaft erfüllten und die Durchgängigkeit des Gesamtsystems auf die oberen Ebenen der Automatisierungshierarchie beschränkten.

"Weiche" Echtzeitaufgaben sind mit SVR4 bereits lösbar. Dies gelang mit Einführung der

Prozeß-Scheduling-Klasse "Realtime", die es im Gegensatz zur bisherigen "fairen" Unix-Timesharing-Strategie möglich macht, Prozessen eine feste Priorität zu geben. Damit findet die oft benötigte Strategie Unterstützung, wichtige Arbeiten durch den Rechner vordringlich erledigen zu lassen (first things first policy). Jedoch ist diese Maßnahme alleine nicht ausreichend für die Echtzeitanforderungen der industriellen Automatisierungstechnik.

Vollständiges PC-Unix-System

Das Betriebssystem Sorix 386/486 begegnet diesen Anforderungen in eigener Weise. Sorix 386/486 ist in seiner Grundversion ein vollständiges PC-Unix-System, basierend auf dem AT&T-Unix-Standard System V Release 4.0 (SVR4). Darüber hinaus kommt es den speziellen industriellen Anforderungen in bezug auf Echtzeitfähigkeit, Robustheit und Skalierbarkeit entgegen.

Diese industriellen Zusatzanforderungen haben die Entwickler unter Beibehaltung der vollen Unix-Standardfunktionalität und -Schnittstellen realisiert. Solche Vorgehensweise bietet zwei wesentliche Vorteile für den Anwender: SVR4-Kompatibilität für den Einsatz von Standardsoftware und Einsatz des gleichen Betriebssystems, vom zeitkritischen bis in den nicht-zeitkritischen Bereich.

Im Basispaket bietet Sorix 386/486 den gesamten Unix-Umfang von SVR4. Die zusätzlichen Leistungen von Sorix über den Standard-Unix-Funktionsumfang hinaus dienen dazu, den speziellen industriellen Anforderungen nach Echtzeit und Robustheit gerecht zu werden. Die Zusatzleistungen ließen sich durch Modifikation und Erweiterung des AT&T-Kernels unter Beibehaltung aller Standard-Schnittstellen realisieren.

Die Sorix-Erweiterungen sind als optionale Zusatzpakete zum SVR4-Basispaket installierbar. Damit ist eine flexible Konfiguration auf die Anwenderanforderungen gewährleistet.

Ein Zusatzpaket erweitert die SVR4-Funktionalität um die Anforderungen für den Echtzeiteinsatz. Die Sorix-Realtime-Extensions machen aus dem SVR4-Kernel ein deterministisches System für industrielle Anforderungen. Insbesondere findet sich ein "preemtive Scheduling", das es Echtzeitprozessen erlaubt, durch Verdrängung von Prozessen niedriger Priorität sofort zu reagieren.

Events und Quicksemaphore

Das Betriebssystem hat weiterhin zusätzliche Funktionen im Bereich der Interprozeßkommunikation und im I/O-Bereich. Die Interprozeßkommunikationsmittel von Unix erweitert Sorix durch performante Funktionen, wie sie häufig in Echtzeitsystemen benötigt werden.

Events sind ein schneller Mechanismus zur Prozeßsynchronisation und zum Austausch kurzer Meldungen. Sie vereinigen die asynchronen Eigenschaften von Unix-Signals mit der Eigenschaft eines gepufferten Datenaustausches, wie sie von Unix-Messages bekannt ist.

Quicksemaphore sind schnelle und in ihrer Funktion bewußt einfach gehaltene Semaphore, die zum Beispiel zur Prozeßsynchronisation beim Zugriff auf gemeinsame Betriebsmittel eingesetzt werden.

Ein Timed-Request-Mechanismus ermöglicht zeitabhängige Ausführung von

Event- und Quicksemaphore-Operationen.

Sorix ergänzt echtzeitkritische Operationen, wie Datentransfer von und zur Festplatte um die Möglichkeit der asynchronen Ausführung. Weiterhin läßt sich unter Umgehung des in Unix-Systemen üblichen Filesystem Buffer Caches direkt auf das Filesystem zugreifen. Contiguous Files sorgen für reduzierte Datentransferzeiten. Hierbei finden Dateien immer reservierten, zusammenhängend den Plattenspeicher. Alle filesystemspezifischen Erweiterungen sind in einem speziellen Sorix-Filesystem (sofs) verfügbar, das SVR4-konform unter der virtuellen Filesystemschnittstelle betrieben wird.

Mit dem Betriebssystem bietet Siemens maßgeschneiderte Subsysteme für Kommunikation, Grafik, Software-Erstellung und Datenhaltung an, die ebenfalls auf die industriellen Anforderungen hin optimiert sind.

Rechner im Automatisierungsbereich finden sich immer häufiger in Netzwerksystemen. Dabei kommt den "Lokalen Netzen" (LAN) eine besondere Bedeutung für die betriebliche Kommunikation zu. Sorix gewährleistet durch seine Kommunikationsdienste eine Einbindung von Systemen in einen Netzverbund. Darüber hinaus sind die Kommunikationskomponenten auf die speziellen Anforderungen einer Echtzeitsystem-Umgebung optimiert. Zur Kommunikation stehen für Sorix zwei Protokollfamilien zur Verfügung: die TCP/IP- und die ISO-Protokollfamilie.

Die TCP/IP-Protokollfamilie ist der De-facto-Standard für Rechnernetze in Unix-Umgebungen. Dieses Kommunikationssystem ist eine Standardkomponente von SVR4 und erfuhr für Sorix eine Überarbeitung unter den Aspekten Echtzeiteigenschaft und Robustheit. Zugang zum Transportsystem erhalten die Applikationen über die Socket-Schnittstelle. Ein Dienst zur netzweiten Zeitsynchronisierung aller Stationen gewährleistet die zeitfolgerichtige Bewertung aller Prozeßereignisse.

Die ISO-Protokollfamilie entspricht internationalen Standards und wird auch im Industrienetz "Sinec H1" von Siemens eingesetzt. Das ISO-Kommunikationssystem für Sinec H1 besteht aus einem Transportsystem, das für die Applikationen ein standardisiertes Programmierinterface (XTI) zur Verfügung stellt. Als Standard-Applikationen der höheren Schichten läßt der Sinec-AP-Monitor oder der Sinec-Filetransfer FTS einsetzen.

Im Bereich der Prozeßleittechnik erhöht die grafische Visualisierung von Anlagendaten und Anlagenzuständen die Transparenz von Prozeßabläufen. Das Grafiksystem zu Sorix ist der vom MIT entwickelte Standard X-Window, der in seiner heutigen Version X11R5 anerkannter Marktstand ist.

Test- und Debug-System

Aufsetzend auf X-Windows gibt es verschiedene Toolkits, mit denen sich häufig benötigte Grafik- und Bedienfunktionen komfortabel und schnell realisieren lassen. Im Sorix-Grafiksystem enthalten sind das X-Toolkit sowie das OSF/Motif-Toolkit. Grafische Anwendungen, die auf dem X-Window-System beruhen, können hochportabel programmiert werden. Der Code ist unabhängig von den jeweiligen Ein- oder Ausgabegeräten.

Eine weitere Unterstützung erfährt die Entwicklung oder Portierung von Softwaresystemen bei Sorix durch ein Set von Programmierwerkzeugen. Neben Editoren und verschiedenen Compilern und Sprachumsetzern steht ein Test- und Debug-System (TDS) zur Verfügung. Highlights von TDS sind seine grafische Benutzeroberfläche, das Testen parallel laufender Prozesse sowie das "Andocken" an laufende Prozesse.

Ob Anlagenkonfigurationsdaten oder Prozeßdaten - es besteht immer der Wunsch die Daten in logischen Einheiten so abzulegen, daß ein performanter Zugriff zum Lesen oder Aktualisieren möglich wird. Das Sorix Datenhaltungssystem X/ISAM stellt Funktionen zum datensatzorientierten Bearbeiten zur Verfügung. Die Datensätze werden dabei indiziert abgelegt und lassen sich mit Hilfe dieser Indizes gezielt und schnell adressieren.

Diese Zugriffsmethode bezeichnet man als "Indexed Sequential Access Method" (ISAM).

Die Zugriffsmethode ist vergleichbar mit dem Suchen in einem Buch durch Nachschlagen im Stichwortverzeichnis (Index): Man durchsucht eine verhältnismäßig kleine Informationsmenge und entnimmt daraus die Verweise in den eigentlichen Datenbestand. Die Index-Einträge sind nach einem bestimmten Kriterium sortiert. Der Leistungsumfang von X/ISAM läßt sich über eine prozedurale und über eine interaktive Schnittstelle nutzen.

Unix ist kein Allheilmittel

Die Notwendigkeit zur Produktivitätssteigerung in der Automatisierungstechnik ist unbestritten. Der Weg hin zu offenen Systemen ist dabei ein wesentlicher Faktor. Unix-Systeme bieten heute den besten Integrationsansatz für heterogene Systemumgebungen.

Mit der Vereinigung von Unix und Echtzeit im Betriebssystem Sorix 386/486 ist die Grundlage für durchgängige Systemlösungen bis in das industrielle Einsatzfeld hinein geschaffen. Unix ist kein Allheilmittel. Das Beispiel Sorix zeigt jedoch, daß Unix mit geeigneten Ergänzungen eine zukunftsorientierte Plattform auch für die Außenbereiche der Informationsverarbeitung darstellen wird.