Das Message-System der PowerUP System Software

Die PowerUP System Software beinhaltet ein modernes asynchrones Message-System, das in der Lage ist, Signale und Daten von einem Task zum anderen zu schicken - unabhängig davon, auf welchem Prozessor die jeweiligen Tasks laufen. Dieses Message-System ermöglicht extrem schnellen Datenaustausch zwischen verschiedenen Softwaremodulen (bzw. Tasks oder Threads), ohne daß ein Kontextswitch nötig ist, auch wenn die verschiedenen Tasks auf unterschiedlichen Prozessoren arbeiten. Dabei ist es von der Softwareseite vollkommen egal, wieviele Prozessoren in einem System arbeiten (oder ggfs. über eine Vernetzung verschiedener Rechner mieinander arbeiten), oder um welche Prozessortypen es sich dabei handelt - es können 68k-CPUs oder PowerPCs, aber auch z.B. spezielle GL-3D-Prozessoren oder ein beliebiger anderer Prozessortyp sein.

Das Message-System kann in extrem kurzer Zeit (weniger als 7 Mikrosekunden) Signale ohne Daten zwischen verschiedenen Tasks übertragen. Auch eine Versendung von Nutzdaten findet in sehr kurzer Zeit statt, da selbst bei einem Message-Austausch zwischen Tasks auf unterschiedlichen Prozessoren lediglich die übertragenen Daten in den Prozessor-Caches geflusht werden müssen; werden so z.B. nur 20 Byte übertragen, muß nur eine einzige Cacheline geflusht werden.

Da das Message-System der PowerUP System Software über einen speziellen Message-Server arbeitet, sind Softwaremodule (bzw. Tasks und Threads), die es zur Kommunikation verwenden, auf zukünftige speichergeschützte Betriebssystemversionen vorbereitet. Beim Übertragen von Daten oder der Übergabe der Kontrolle über größere Datenstrukturen von einem Task zum anderen sorgt der Message-Server dafür, daß die Zugriffsberechtigungen der Tasks entsprechend erteilt oder gesperrt werden, so daß stets nur berechtigte Tasks auf den Speicherbereich zugreifen können. Um die für PowerUP-Systeme entwickelte Software in der Zukunft unter einem Betriebssystem, das Speicherschutz bietet, laufen zu lassen, muß unter diesem Betriebssystem lediglich ein (von der Sicht der Tasks aus) funktionskompatibler Message-Server installiert werden - übrigens auch das wiederum unabhängig davon, auf welchem Prozessor das Betriebssystem läuft.

Mit diesem modernen, multiprozessorfähigen und für die Einführung von Memory Protection vorbereiteten Messagesystem kann bei allen Applikationen programmintern eine extrem schnelle Kommunikation stattfinden. Die aktuelle Version der PowerUP System Software benötigt für das Versenden von 1000 (eintausend) Messages mit jeweils 20-30 Byte angehängten Nutzdaten eine Zeit von unter 60 Millisekunden, für 1000 Replies (Antwortsignale) werden weniger als 7 Millisekunden benötigt. Dies ergibt eine Zeit von weniger als 70 Mikrosekunden für das Versenden einer Message mit Nutzdaten und das Zurücksenden einer Antwort zwischen zwei auf unterschiedlichen Prozessoren laufenden Tasks bei vollem parallelen Betrieb der Prozessoren in unserem Multi-Prozessor-fähigen System.

Insgesamt stellt diese Implementation eine auf lange geplanten Konzepten basierende Lösung dar, die größtmögliche Zukunftssicherheit und Flexibilität bietet, und deren Vorteile bei den unterschiedlichsten Weiterentwicklungen von Hardware, Betriebssystemsoftware oder auch Anwendungen voll zum Tragen kommen. phase 5 will damit einen wesentlichen Beitrag dazu leisten, daß Entwicklungsaufwand, den die Softwareentwickler heute erbringen, zukunftskompatibel ist - unabhängig davon, welchen Weg der Amiga in der Zukunft gehen wird.




zurück zur Übersicht zum Seitenanfang


phase5


Diese Seite ist Copyright © 2005-2017 bei Matthias Münch. Alle Rechte vorbehalten.
Einige Inhalte unterliegen dem Copyright von phase 5 digital products.
Amiga, AmigaOS und das Amiga-Logo sind eingetragene Warenzeichen von Amiga Inc.
PowerPC und das PowerPC-Logo sind eingetragene Warenzeichen der IBM Corporation