TAO (Software)
# TAO (Software)

The ACE ORB (TAO) ist eine freie Standard-kompatible echtzeitfähige Implementierung von CORBA in C++ basierend auf dem ACE-Framework. TAO bietet eine skalierbare Dienstgüte (Quality of Service QoS) für die gesamte Kommunikationsstrecke (end-to-end).
Im Unterschied zu konventionellen Implementierungen von CORBA wendet TAO Softwarepraktiken und Muster an, um die Automatisierung von hochperformanten Echtzeit QoS für verteilte Anwendungen zu vereinfachen.
Traditionell besteht die Barriere für ein brauchbares CORBA für viele Echtzeitanforderungen aus Aspekten, die mit dem end-to-end-Design verbunden sind. Für Echtzeitanwendungen gilt es, die Grenzen zwischen den Schichten, wie sie bei traditionellen CORBA-Implementierungen der Fall sind, zu überwinden.
Dies ist der Grund, wieso TAO die Netzwerkinterfaces, das Betriebssystem-I/O-Subsystem, ORB und die Middleware-Dienste integriert, um eine end-to-end-Lösung zu bieten. Beispielsweise kann man den CORBA-Ereignisdienst, der die Anwendungssoftware durch Unterstützung entkoppelter Anbieter und Konsumenten unterstützt, die asynchrone Ereigniszustellung und die verteilte Gruppenkommunikation betrachten. TAO verbessert den Standard-CORBA-Ereignisdienst um wichtige Eigenschaften, wie Echtzeit-Ereignisverarbeitung und Ablaufsteuerung, periodische Ereignisverarbeitung, effiziente Ereignisfilterung und Korrelationsmechanismen sowie Multicast-Protokolle, die von Echtzeitanwendungen benötigt werden.

## Nutzung

TAO kann frei benutzt und weiterverbreitet werden, ohne dass Lizenzen für Entwicklung und Vertrieb erworben werden müssen. Kommerzielle Unterstützung, Dokumentation, Training und Consulting ist von verschiedenen Anbietern erhältlich.
TAO wurde auf unterschiedliche Betriebssystem-Plattformen portiert: Windows (WinNT 3.5.x, 4.x, 2000, Embedded NT, XP, Win95/98 und WinCE unter der Verwendung von Microsoft Visual C++, Borland C++Builder und IBM Visual Age auf Intel- und Alpha-Plattformen), viele Versionen von Unix (z. B. Solaris 1.x und 2.x auf Sun SPARC und Intel, IRIX 6.x, HP-UX 10.x und 11.x, Tru64 UNIX 4.x, AIX 4.x und 5.x, SCO Unix, und frei erhältlichen Unix-Implementierungen, wie Debian 2.x, Red Hat Linux 5.2, 6.x, 7.x, 8.x, and 9.x, so wie zahlreiche Enterprise Versionen, SuSE Linux 8.x und 9.x, Timesys Linux, FreeBSD und NetBSD), Echtzeitbetriebssysteme (z. B. LynxOS, VxWorks, QNX Neutrino, OS-9, und ChorusOS), OpenVMS und MVS OpenEdition.