ACE, TAO, and CIAO Success Stories
ACE, TAO, and CIAO are being used in thousands of commercial products
at many companies, as well as at various universities and research
labs around the world, in many types of distributed, real-time, and
embedded systems, particularly telecom, medical, aerospace, defense,
and financial services. Our research group has
personally worked with thousands of
contributors, dozens of end-user
companies, and over a half-dozen
commercial support providers using ACE and TAO on UNIX, Win32, and embedded
platforms. Our experiences and
lessons learned using ACE, TAO, and
CIAO on these projects are documented online.
ACE, TAO, and CIAO have been used and enhanced by hundreds of developers at many companies
and universities in over 40 countries in the world. If you're
interested in learning more about how ACE, TAO, and CIAO are being
used in practice, or if you'd like to explain how you are using ACE,
TAO, and CIAO, please send email to the email@example.com
mailing list. The following is a list of some known uses of ACE, TAO,
and CIAO. See the TAO Press Releases and
meeting briefing for more information on TAO's use in commercial
projects in many domains.
Telecommunications and Network Management
- ACE and TAO are used inside the 3rd generation mobile base
stations called NodeB
developed by Siemens AG, Information and Communication Mobile.
- ACE is used for PBX
monitoring applications at Ericsson, Cypress California.
- ACE is used for a distributed computing infrastructure and
gateway communication for mobile communications systems at Motorola
Iridium, Phoenix, Arizona.
- Innovation Media Solutions uses TAO for inflight entertaining and
- ACE is used for network management at ARINC.
- CommWorks Corp., a 3Com
company, developed its next-generation VoIP media gateway, the
TCH2000, with ACE. ACE facilitated the development of a SPARC
Solaris-based simulation of the media gateway for the purpose of rapid
development. Over 95% of the code run in simulation also runs without
modification on its PPC VxWorks target. Design to a demonstrable
system took less than six months in large measure to the efficiency
gains won by ACE-based simulation.
- TAO is used by Spectrum
Signal Processing in their SDR-3000 and HCDR-1002 product
families of software defined radio subsystems.
- CUseeMe Networks, Inc use
ACE and TAO in their CUseeMe
Conference Server, a software-based H.323 MCU, enabling
standards-based group conferencing with a variety of endpoints.
The server uses a Reactor to handle all T.120 protocol
communication, and a Proactor to handle the huge numbers of RTP/RTCP
audio and video datagrams. Also, an ACE_Task is used as a thread
pool for mixing audio packets. TAO is being used to configure and
monitor the server.
- Telesoft S.p.A., a company owned by Telecom Italia that produces
telecommunications software, is using ACE to provide a general network
API that hides the underlying communication mechanism.
- GlobeTOM has used TAO to
develop a product to perform generic network mediation using the Monfox Dynamic TMN toolkit to
implement Q3 interfaces to network elements and support CMIS
(CMIP/RFC1006) communication to the network resources of customers.
They are using ACE together with a proprietary Business Process Logic
engine to perform intelligent abstraction of the underlying network
resource diversity to present the customer with a homogeneous view of
their hetereogeneous network. This ACE-based solution is now
successfully managing Alcatel, Motorola and Siemens GSM radio
equipment as well as Siemens Switching and UMTS equipment.
- DSC Communications
Corporation is using ACE in the development of an Element
Management System for their Litespan network elements.
- ACE is being used at CSC Communications Industry Services on
projects including, cellular switch provisioning, real time rater,
credit and collections, GUI integration with UNIX, and a credit bureau
- Balisoft Technologies is
developing a Call Center
integration for its LiveContact
product using ACE as an infrastructure. ACE provides events
dispatching, TCP/IP communications, distributed logging and dynamic
service configuration. The software allows internet surfers to contact
customer service call centers without having to place a telephone call
offline or wait for e-mail.
- Infinite Technology,
Inc. has built a routing engine on Solaris to support a VoIP
network of gatekeepers and gateways. They have used the following
patterns very successfully: ACE Thread Pools (the
ACE_Task pattern), ACE CStrings, ACE threads (from
ThreadManager::spawn()), ACE Singleton, ACE Token,
ACE_Allocator_Adapter >, and last but not the least,
ACE_Atomic_Op to support a reference counting
scheme. The project was finish in on time, within budget, and far
exceeding client performance expectations on the running process.
- ACE is being used to develop communications software at LCI
International, which is the 6th largest long distance carrier in
- Titan Client/Server Technologies is using ACE to develop a highly
distributed system that is responsible for managing the
encryption (and eventual decryption at the consumer end) of
analog or digital audio in a Direct To Home consumer television
- ETC Ltd (London UK) recently completed a high profile project at
Cable & Wireless in the UK using ACE, which provides a real time
multithreaded gateway between a Remedy ARS system and a Microsoft SQL
server system. ACE made is easy to port the code to both Solaris and
NT. In addition, the design patterns provided by ACE are used as
exemplars for new design work.
- Comverse Network Systems is using ACE as a basis for the
infrastructure in a large scale telephony project. Comverse develops
a platform that gives various services such as voice mail, call
completion and forwarding, messaging and different telephony
- Bell South Cellular Corp is using ACE to write a trouble ticket
processing system for cellular telephone customers to report problems.
This system involves remote PC/Windows client and acess to mainframes
via an external Unix gateway. ACE is used for (1) TCP communication
to the PC clients and thehost system gateway and (2) multi-threaded
programming support and signal programming for the servers.
- Objective Systems Integrators,
Folsom, CA, have used ACE to build a network management platform for
SNMP and CMIP.
- ACE is being used in a product at Ericsson Radio.
- ACE is being used by reachNET to create the worlds first
wireless communications network for the deaf. By using a small
wireless device the deaf user will be able to conduct a TTY (TDD) call
when away from their wire line equipment. They have created an
ACE-based server combining the wireless network switch with a large
bank of special TTY modems.
- ACE is being used at Tadiran Telecommunications, the biggest in
Israel supplier of telecommunications equipment, to build performance
monitoring tools for phone switching devices.
- ACE was successfully used in the development of an Ethernet to
ATM edge forwarder emulation software tool (Lanscape) at Newbridge Networks Inc. in a
multithreaded Solaris environment. The key ACE components used on this
- ACE is being used at Cisco Systems for development of Network
Management Applications and products, including the CSR-1 carrier
- ADC Apex using ACE to build network management applications.
They are also looking at TAO as a possible alternative for Orbix which
is currently used for their distributed applications.
Networks and Motorola
Computer Group (hardware) announced a collaboration to support
advanced Internet product development. It runs on Motorola's chips
and Nortel's Open IP routing software, which is developed using
- ACE+TAO are being used by Northrop Grumman and Boeing on Wedgetail,
which is an Australian airborne early warning & control (AEW&C)
system. This AEW&C system combines the new high-performance Boeing
737-700 aircraft with the Northrop Grumman multi-role Electronically
Scanned Array (MESA) radar.
- Data Kinetics is developing an
application called net.Tables that
uses ACE to perform table management services across different
platforms. The server portion runs on Linux and Windows NT. Clients
run on Linux, Win-NT, and Win-95.
- ACE is used in the ATM switch Q.93b signaling software at
Bellcore, Morristown, New Jersey
- ACE is used in an X.25 PVC product at Syncom Systems AB, Uppsala,
- Alcatel recently made a
corporate-wide decision to deploy TAO as packaged in OpenFusion TCS. As a
major telecom equipment manufacturer, Alcatel is a heavy user of CORBA
in its network management products.
- COMSAT RSI has been using ACE in building the Network Control
Center for the ACeS satellite-based cellular comms system. On this
project, ACE was used extensively as OO wrappers over IPC mechanisms,
as well as providing a high-level network programming framework to
build network management and call processing applications.
- TAO is being used in the OSSNet Framework product, which
provides comprehensive suite of development tools and a run-time
environment for rapidly building and deploying standards-based network
managers and agents.
- TAO and ACE are being used for network management and a call
processing gateway for a "voice over IP" system in the Siemens ICN
division in Munich, Germany.
- ACE and TAO are being used for a number wireless and wireline
telecommunication and data networking embedded systems at Lucent
Technologies and Motorola.
- TAO is being used in the CMA telecom management agent
project, which allows telecom devices to be managed via CORBA
interfaces. CMA does for CORBA what SNMP agents do for SNMP.
- DIRECTV® uses ACE in
it's high-speed broadcast network to insert data circuits into the
video stream, and to monitor and control remote broadcast equipment
located throughout the US.
Aerospace and Defense
- Northrup Grumman Electronic Systems (NGES) is using ACE+TAO+CIAO+DAnCE
for the Teton Project. NGES has funded the development of DDS4CCM
and AMI4CCM as additons to CIAO. CIAO is used in the core of their SNA
Core Software Services APIs for High Performance Computing. A
presentation from NGES with more background information is available.
- ACE+TAO are being used in the displays subsystem of Raytheon's Ship
Self-Defense System (SSDS MK2) on the USS Ronald Reagan aircraft carrier.
- TAO and ACE are used for the Run-Time Infrastructure (RTI) for
the Defense Modeling and Simulation Organization's (DMSO) High-Level Architecture (HLA) distributed interactive simulation
environment at SAIC.
- TAO and ACE are used for a number of manned and unmanned
real-time avionics mission computing
embedded systems at Boeing/McDonnell Douglas in St. Louis, MO.
Several successful test flights of
Boeing aircraft were recently flown using ACE and TAO.
- At JPL, a telemetry infrastructure developed with ACE+TAO
framework is being use to process, archive, and distribute the current
flyby science data. TAO is being use as the backbone for data
acquisition and resource management. ACE is being use to develop the
Interface as the publish/subscribe and data archiving service,
which enables the distribution of processed science product to remote
scientists in RealTime. In addition, ACE is also being use for
developing a portable OO database wrapper interface.
- ACE has been deployed to the 2nd Infantry Division HQs in Korea.
- ACE is being used at esystems
on the Tier2 Plus
- ACE is being used in the Distributed Air/Ground Traffic
Management (DAG-TM) program, which is a NASA effort that
is the testing "free-flight" operating concept that will allow
pilots with specially equipped aircraft to choose their own flight
paths and provide their own en route separation.
- The Boeing Company is using
ACE in a Centrifuge training device for the US Navy. The
communications and logging facilities of ACE are used to allow five
separate computer systems running on different operating systems to
communication and operate as one.
- The Turkish Navy is using ACE+TAO as the basis for shipboard combat
- ACE is being used on the SIMAE project for the Chilean Air Force
to build a Tactical Warfare Simulation System running on SGI Indy
workstations using an SGI Indigo as a server.
- ACE is used at COMSAT
labs in Clarksburg, MD for various satellite control projects.
- ACE is used as the main IPC layer in SETAC, a distributed
interactive simulation system, used by the Chilean Army as part of the
training for batallion and brigade commanders and staffs.
- ACE+TAO are being used by Raytheon as the middleware for the
mission controls an communications system in the Stratospheric Observatory for
Infrared Astronomy (SOFIA) project, which is a Boeing 747SP
aircraft modified to accommodate a 2.5 meter reflecting telescope,
which is the largest airborne telescope in the world.
- ACE+TAO are being used by Raytheon as part of the total ship
computing environment (TSCE) infrastructure for the DD(X) land attack
destroyer program. A TSCE is a coordinated grid of computers that
manage many aspects of a ship's power, navigation, command and
control, and combat operations.
- The Advanced Technology group at Sanders, a Lockheed-Martin
Company, is using TAO and ACE to develop the Ground Support System
(GSS) for the X33 Single Stage To Orbit (SSTO) Reusable Launch Vehicle
(RLV) prototype: www.venturestar.com. The GSS is
responsible for archiving, distributing, and displaying the real-time
telemetery from the X33 vehicle and all the Ground Interface Modules
(GIMs) which interface with ground fuel storage tanks, etc. The GSS
is also responsible for interpreting operator commands, scripted
commands, and Reactive Control Logic rules, then forwarding low-level
device commands to the vehicle and GIMs.Our software is composed of
two major pieces: the operator consoles (which are written in Java and
run on NT), and the Command and Data Processor (CDP, which is written
in C++ and runs on Solaris). The CDP interfaces with the vehicle and
GIMS, logging the data stream (which is around 200000 updates/sec),
activating any RCL, and multicasting updates to interested
The CDP is written using ACE as an OS abstraction to simplify
portability between VxWorks and Solaris. TAO provides the CORBA
interface to the Java consoles (which use OrbixWeb). Other projects
at Sanders are looking at ACE and TAO.
- Raytheon Systems Company in St. Petersburg, Florda is using ACE
and TAO on the Joint Tactical Terminal (JTT) project. The JTT is an
open architecture satellite communications terminal utilized by
various armed services. Raytheon is writing embedded C++ that is
targeted to a VxWorks operating system running on multiple processors
on a VME backplane. Host development of the software is performed on
NT workstations and then is ported to VxWorks. The software is
developed as a series of software objects which can be "plug and
play'd" in various configurations. TAO and its Naming Service are
being used as a framework to discover, create, and communicate amonst
these objects. Since the software must also be transportable, ACE is
used as an O/S abstraction layer. The ability to use ACE on NT and
VxWorks will hopefully make "porting" a non-issue.
- APTI (part of the Falls Church Division of Raytheon/E-Systems) is
using ACE in the implementation of a Client/Server architecture for
the control system software for an ionospheric research instrument
(IRI) for the Air Force and ONR in Gakona, Alaska.
COTS Middleware Platforms and Products
- OMC is using ACE and TAO to develop
Brutus, which is a CORBA layer on top of win32 Extended MAPI. Any
compliant CORBA client application on any platform has therefore full
access to any Microsoft Exchange Server version 5.5 or later on an
equal footing with native win32 MAPI applications such as MS Outlook.
- ACE+TAO are being used as the core middleware infrastructure for
HP's NonStop CORBA product, which has transaction rates in the
with peaks hitting 120,000 tx/sec.
- bake, which is an open-source
distributed/parallel build tool focusing on correct dependency graph generation,
uses ACE for threading and portability issues. It will soon use TAO
for communication, as well.
bake is a distributed
- Penta Security Systems in
Korea has used ACE to develope certification authority, registration
authority in PKI System that deals with RFC2510/RFC2511 protocol.
This system was applied to Government PKI of South Korea, and intranet security
systems in some banks on AIX, Sun, Linux, and Win32.
- ACE and JAWS is used as the basis for an Internet content
delivery system at CacheFlow in
- iCMG has successfully
developed K2 Component Server based on CCM specs and ACE+TAO. The K2
Component Server is a server-side infrastructure to develop and deploy
CORBA Component written in CORBA 3.0 IDL. It is based on OMG's
CORBAComponent Model that includes a Component Model, Container Model,
Packaging and Deployment, Component Implementation Framework and
Inter-working with EJB 1.1.
- ACE is an essential part of a project called Magick, which is an IRC services
The K2 Component Server uses IIOP as the base layer is the
communication protocol derived from CORBA. Even though, the K2 core
implementation is independent from a particular ORB implementation,
iCMG has chosen to use ACE+TAO since they provide more services than
other commercial ORB vendors.
- Vectaport Inc. uses the ACE
socket/handler/acceptor framework in ivtools, a layered
collection of application frameworks built on InterViews
Three different uses of the ACE mechanisms were incorporated into
ivtools, first to add server capability to a stand-alone command
interpreter, then to add an import service to drawing editors derived
from idraw, and finally to add an interpreted remote control mechanism
to the Unidraw framework.
- ACE has impacted the design and development of a suite of
reliable multicast products that are currently in development by MLDS, Inc.
- TAO as packaged as part of PrismTechnologies
OpenFusion Total CORBA Solution (TCS).
- ACE is being used in a control system for an ionospheric research
instrument (IRI) which is a large phased array radio-station type of
thing (www.haarp.alaska.edu). The
array consists of (currently) 48 transmitters, each of which has an
embedded controller. These transmitters are all controlled by a
central server which runs a number of processes, all of which use ACE
for UDP sockets, Shared memory, event scheduling with the Reactor,
etc. ACE is also being used in a data acquisition system for Extremely
Low Frequency (ELF) sensors (the antenna array can generate ELF in the
auroral electrojet, which can be observed on earth).
- The Sunrise
project is using ACE to control a light-weight solar telescope with a
1m aperture for spectro-polarimetric observations of the solar
atmosphere. The telescope is planned to be operated during a series of
long-duration balloon flights in order to obtain time series of
spectra and images at the diffraction-limit and to study the UV
spectral region down to 200 nm, which is not accessible from the
ground. The central aim of Sunrise is to understand the structure and
dynamics of the magnetic field in the solar atmosphere. Interacting
with the convective flow field, the magnetic field in the solar
photosphere develops intense field concentrations on scales below 100
km, which are crucial for the dynamics and energetics of the whole
solar atmosphere. In addition, Sunrise aims to provide information on
the structure and dynamics of the solar chromosphere and on the
physics of solar irradiance changes.
- The Keck Observatory on Mauna Kea uses TAO to operate the world's
largest astronomical observatory.
- The Alacama Large Millimeter/Submillimeter Array (ALMA)
is a telescope project that is using ACE. The ALMA project will
provide scientists with precise images of galaxies in formation seen
as they were twelve billion years ago.
- The GTC (http://gtc.iac.es)
telescope is a high performance segmented 10-meter telescope to be
installed in one of the best sites of the Northern Hemisphere: the ORM
ACE+TAO is being used to develop its control system (GCS). GCS is
responsible for controlling the different mechanisms of the telescope,
e.g. mount, active optics, instruments, as well as for the data
acquisition and adaptive observation scheduling. Specifically, the
primary mirror control system may have to work at 200 Hz to maintain
alignment of a set of 36 mirror-segments, weighing 400 kg each, within
an accuracy of some nanometers. GCS will run on a heterogeneous
platform: VME CPU boards with VxWorks for the real-time tier written
in C++ and Solaris workstations for the coordinating part and for the
user interfaces written in Java. All the nodes are connected by a
high speed ATM network.
ACE+TAO provides a uniform architecture, simplifies portability
between VxWorks and Solaris, and interoperates with the Java2 ORB to
communicate with the user interfaces. The real-time capabilities of
TAO are extensively exercised through the use of the Real-Time Event
Service to drive the control loops, status monitoring, alarm
- ACE+TAO are being used in a passive radar project at the University
of Washington. The instrument in this project relies on an
ability to have two receivers synchonously sample at a rate of 250
ksamp/sec for relatively long times (seconds now, minutes later), the
trick being that the two receivers are separated by 150 km. ACE+TAO
are used multiple times in this project: for the experiment
coordination, data transport, and ultimately thread management on the
- The BABAR
experiment at the Stanford Linear Accelerator Center is using both ACE
and TAO within selected places of the data acquisition system. We are
using ACE transparently via the "CMLOG" software from CEBAF (Jefferson
Lab), and in part of our Unix-based event delivery software. In
addition, we are using TAO as a mechanism to monitor and control parts
of the DAQ system. The code to be monitored/controlled is C++ and the
GUI is Java (using JavaIDL). Finally, a distributed histogram package
being developed at Caltech will shortly use TAO.
The experiment is a project located on the Stanford University campus
and involves a new electron-positron asymmetric collider used to
produce large numbers of B and B-bar (anti-B) mesons (you can guess
how the collaboration got its name). The physics is focused on
investigating differences in the behavior of matter and anti-matter by
observing the decay products of the B and B-bar mesons. This project
involves over 600 physicists and engineers representing ~80
institutions from 9 countries. Work started in the late 1980s and the
first data is scheduled to be collected in the Spring of 1999. The
experiment will continue running for five to ten years. More info may
be found here:
Finance and Online Financial Services
- IG Index uses TAO as the basis for spread betting.
- ACXIOM uses TAO to provide customer information and analytics
obtained from publically available sources and their clients.
- Onix Solutions are using ACE
to implement a C++ FIX Engine for the Financial Information eXchange ("FIX")
Protocol. One of the most important and complex tasks of a FIX
Engine is to manages network connections, and using ACE_Connector,
ACE_Svc_Handler, ACE_Acceptor and ACE_Message_Queue enabled this part
of the system to be completed after just a few weeks of coding.
- ACE is used for distributed insurance claims processing system at
CCC, Chicago, Illinois.
- ACE is used for a global limiting system at Credit Suisse,
- Automated Trading Desk uses ACE
and TAO as the infrastructure for their online finance services
- ACE is being used on Win32, Linux, and Solaris in the Administracion Federal de Ingresos
Publicos in its generalized database access server that provides a
universal contry-wide platform to access to tax-related
- Bear Stearns utilizes ACE in Risk Analysis Control System (RACS)
to facilitate its server/client UNIX/NT development. RACS is intended
to provide overnight and real time theoretical market position
calculations to support clearance group and market analysts
There is a server framework in place that allows creation of multiple
independent servers running in dedicated threads and sharing the same
executable. Architecture uses Stream, Module, Task, Reactor,
Thread_Manager classes. Utilization domain of servers sharing the same
address space and running in different threads of control is similar
to the one of a shared memory communication between servers, but
implementation is much more flexible and cleaner. As an example, we
may draw any in-memory data server, that should update (on the fly)
historical server of the same data. In our case they share the same
repository, which is the only point of contact for these two servers.
There are three non-trivial areas in such architecture: signal
handling, threads dispatching, network dispatching. Servers register
their signals with a dedicated thread running a signal reactor. Each
server thread has a dedicated reactor to process network IO and
dedicated thread manager to provide effective shutdown and specific
resources manipulations. Also every server has its own resource
manager to initialize and track down specific resources. Another very
interesting and useful application of ACE in our system is Stream
class utilization in conjunction with MessageBlock.
Stream/Module/Task/MessageBlock provide very efficient redirection of
messages and their hierarchical processing, facilitating creation of
functional framework with predefined protocol parsers,
connector/acceptor factories. This makes possible to concentrate
server development on business logic rather than on details of how to
communicate with low level network API. Maintenance is another key
aspect that is much easier to keep up now, due to a true OO nature of
the framework. Modules could be unplugged and adjusted independently
(from each other as well as underlying network protocol). If you have
any questions please don't hesitate to ask.
- Merrill Lynch options trading desk are using ACE Reactor for
point to point communication. Our system is a multi-tier
architecture which uses both publish/subscribe and point to
Management and Control Systems
- ACE and TAO are being used by Thales and Selex in the
next-generation European air traffic management system, which is known
- ACE and TAO are being used by the European Space Operations
Center (ESOC) as part of the Galileo
global positioning system.
- TAO and CIAO have been the underlying technologies successfully
used by the ARCOS Project,
a research effort developed carried out in the Pos-Graduation Program
on Mechatronics of Federal University of Bahia, Brazil. ARCOS is a
vertical, highly configurable framework for the construction of
predictable and interoperable Distributed Industrial Supervision and
Control (D-S&C) Systems and makes intensive use of many TAO+CIAO
features, such as the Real-Time Event Service, Scheduling Service,
DAnCE and the programmatic use of ReDaC.
- Gottwald uses TAO for shipping port management systems, e.g.,
integrating terminal management and logistics.
- Imaging Business Machines uses TAO for high end color image
capture of documents and meaningful data at full track speed,
e.g., automaticlaly organize documents by transition and capture
MICR, OCR/ICR, and barcode information.
- ACE is used by Peopleware
to develop a general-purpose event gathering and control system that
can be used to implement a complete SCADA system, or to monitor
heterogeneous servers and applications. This product is called Osmius and is an open source
- Allied Signal is using ACE on a secondary air traffic control
system for the new Hong Kong airport. The system monitors approaching
aircraft landing on parallel runways. The planes get closer than
normally allowed when landing in parallel, so the system is used for
finer monitoring than is available with the standard air traffic
control systems. The system monitor the departures, since there are
many high mountains around this particular airport, so the planes must
not deviate too much until they have reached a certain safe height.
The system is a collection of NT and Solaris boxes, connected on a
private ethernet LAN.
- McCain uses TAO for their advanced traffic management systems,
e.g., vehicle ID and tracking, signaling, Amber alerts, etc.
- Gilbarco and Veeder-Root use TAO to control fueling systems,
e.g., pressure and temperature monitoring, emissions control and
safety compliance, flow management, and pump/turbine management.
- Scanvaegt uses TAO to control machine food processing and
- Homag uses TAO and CIAO to control machine tools for woodworking.
- ACE+TAO are used in home
automation system that uses CORBA for interservice communication.
The central controller of the system is a SWI-Prolog engine that is
wrapped in ACE+TAO code so Prolog can send and react to CORBA events.
- Krones is using TAO and ACE in their beer bottling real-time
control systems, which process 20-40 images per-second to ensure
- ACE is being used for a high-performance data distribution
service for Siemens Power Systems Control in Minneapolis, MN.
- TAO and ACE are being used in a ``hot rolling mill'' embedded
system framework that controls the production of steel for the Siemens
ATD division in Erlangen, Germany.
- NetAcquire Corporation in
Kirkland, Washington is using ACE and TAO as a distributed object
framework in its real-time distributed NetAcquire Server products. TAO
is being used to support dynamic real-world input/output distributed
device configuration and to support NetAcquire
Publish/Subscribe. ACE is being used to provide a platform-neutral
OS abstraction for NetAcquire Server applications running on the
NetAcquire Server RTOS. NetAcquire systems have been
deployed in satellite telemetry, aerospace test, remote monitoring,
and industrial automation.
- ZAG Ljubljana is using ACE to write a
Bridge Weigh-in-Motion system SiWIM,
a real-time data acquisition and processing system. ACE is used for:
- All TCP/IP and UDP/IP communications between SiWIM Engine and SiWIM Front-End.
- Event logging via
ACE_Log_Msg through a callback routine
that sends UDP packets to an external event logger program.
- Thread management and synchronisation. Inter-thread communication is
The engine currently runs under WinNT4, but ACE was chosen to ease the
future porting of the application to a Linux or VxWorks platform.
- SoftSmiths is using ACE
for its e-Merchant and e-Wheel product
suites, which are next-generation seamlessly integrated and
scalable Transaction Management Systems solutions for energy
Gaming and Multimedia
- Eidos Media uses TAO to separate news from paper, i.e., news
gathering, commentary, analysis, etc.
- World Fusion is using
ACE and TAO to engineer a massively-multiplayer online
persistent-world game (a.k.a., MMOG, MMORPG, MMPOW, etc.)
called Atriarch. TAO is used
for communication between all of our servers. The nature of these
types of games requires real-time QoS constraints, as well as
fault-tolerance, failover, and load balancing.
- Laputan Designs is leveraging ACE in designing and implementing
distributed WWW tools and games.
- ESC Entertaining uses TAO to manage their hundreds of rendering
systems to create visual effects for movies, including the Matrix.
- Euphonix uses TAO for broadcast, post production, music, and live
- ACE was used by AudioActive to broadcast live
audio from the 1997 Grammy
awards. The AUDIOACTIVE Internet Audio
Server runs Linux on a Pentium-based PC with a modified Web server
that supports as many as 100 to 200 real-time audio connections.
- Vistas uses TAO to map signs from camera angles at ball
parks, e.g., manages time expended, frequency and compensates for
angles, players, umps, etc.
- Broadbus uses TAO manage remote TV-on-demand, where all
programming can be stored in memory for delivery by local cable
- ACE is used by the Software Research Laboratory
(SRL), which is a cooperative effort between the NASA Office of Safety
and Mission Assurance (OSMA) and West Virginia University.
- ACE is being used as the networking component of the JX GUI library at Cal Tech.
- ACE and TAO are used in the Quality Objects (QuO) middleware
for providing quality of service (QoS) in distributed applications.
TAO's CORBA Audio/Video Streaming Service is used extensively in the
Unmanned Aircraft Vehicle (UAV) demonstration that is built on top of
the QuO middleware. In addition, the WSOA project at Boeing
Corporation uses QuO on top of TAO for implementing adaptive image
- ACE and TAO are used in the Intrusion-Tolerant
Gateway developed as part of the ITUA project. The Gateway provides
fault-tolerance, intrusion-tolerance, and soft-realtime/consistency
properties to CORBA applications.
- ACE and TAO are being used for a DARPA Software enabled
controls project at Boeing, Georgia Tech, and UC Berkeley. A
Yamaha R-50 Helicopter will be used as the VTOL UAV testbed.
Initially, the effort focuses on the development of algorithms and
integration of software components from other SEC contractors. The
Boeing Open System Architecture, which is based on ACE+TAO and is also
known as Boldstroke,
provides the distributed computing architecture required to develop
and test control algorithms. Boldstroke provides the ideal ether by
way of which software algorithms at all levels (high, medium and low)
can communicate efficiently across a network of computers. A
hardware-in-the-loop simulation of the algorithms will then be
performed demonstrating the algorithms. Based on the outcome of this
simulated demonstration the algorithms will be tested in unusual
flight situations. The helicopter carries an Avionics box with an
Inertial Measurement Unit, GPS and computer processors that allow
control algorithms to be implemented onboard the UAV. Ground station
computers will monitor the UAV during its flight using wireless
- ACE is being used by a SWi, a
healthcare software company in Singapore, to redesign an existing
Interface Engine product into a 3 tier client/server architecture.
- ACE was used for enterprise-wide distributed medical imaging systems at Kodak in Dallas and
Washington University School of Medicine in St. Louis.
- ACE and TAO are being used by GE for a variety of healthcare
- ACE and TAO are being used by Stentorsoft for a variety of
- ACE and TAO are used for syngo, which is next-generation medical software framework for Siemens
Medical Engineering, Erlangen, Germany.
- ACE and TAO are being used at Veritas (now Symantec) as the middleware
infrastructure for their distributed storage management systems.
- StorageTek is using ACE
in a new Storage Management product that will run on MVS. The
software development is being done primarily on Windows/NT and Solaris
platforms. Prototype code developed on NT and Solaris using ACE has
been successfully built and executed on MVS without requiring any
change to the source.
- SUTMYN Storage Corporation are in the process of deploying TAO as
a communication mechanism in a future mass-storage device intended for
attachment to IBM plug-compatible mainframes and open systems. A core
principle of such mass-storage systems is the separation of data and
control paths. TAO will be used as follows:
- in the internal control paths, for traditional object-to-object
method invocation, where the objects are constrained to be in
different processes, and on different processors within our product
- in the event logging subsystem (it may be possible to use
all of the real-time event service), and
- in the external interfaces (those that do not involve data transfer),
for controlling and monitoring the device.
TAO will not be used in any data paths.
This system is implemented on an array of Intel-i960-based, custom
SBCs running VxWorks, an Intel-x86 subsystem running Solaris 2.6 and
some number of SPARC Ultra subsystems running Solaris 2.6. On the
subsystems running Solaris, several processes will be deployed on each
processor. Since the processes are heavily multithreaded, the
thread-per-request style of concurrency will likely be used.
which is an image capture and processing system designed for use on
autonomous robots at the University of Bonn, Germany.
- ACE+TAO are being used in a joint project at the Clinic of
Craniofacial Surgery of the University of Heidelberg and the engineers
of the Institute of Process Control and Robotics of the University of
Karlsruhe to develop a computer and
robot-aided operating theatre.
Travel Planning and Reservation Systems
- The Weather Channel
uses TAO as the basis for their weather.com website.
- AirSage is using ACE+TAO to
provide an intelligent traffic road map based on online analysis of
cell phone signals. AirSage provides comprehensive traffic
information. AirSage utilizes anonymous and aggregate signaling data
from wireless carrier networks to provide traffic information for
metropolitan areas and rural highways throughout the country. Our
patented technology delivers traffic speeds, travel times, and other
transportation information at a fraction of the cost of traditional
traffic monitoring solutions.
- TAO is used by the Sabre Travel Network for their online
- TAO is used by Travelocity for their online
- ACE is used to connect travel agents to travel products and
Airline Reservation systems at Travel Industra Automated Systems
- MapQuest.com is using ACE
to create a server framework from which a few (and all future) servers
are derived. By using ACE and some of its frameworks, has made their
development process much faster, but also portable.
Testing and Measurement Equipment
- Integrated Measurement Systems
in Beaverton, Oregon is using ACE in its Vanguard High Speed Digital
IC Validation System. A SIMD supercomputer used in the development
and test of the next generation of high-end microprocessors. ACE is
an integral part of the client server software which allows the
Gigabit IC validation system to be accessed from anywhere on the
- ACE is used in a multiplatform tool to test the integrity of
system platforms and numerous configurations at Digital Equipment Corp
- Cadence Design Systems, Inc. is using portions of ACE for a
current server that lets multiple application communicate to an
Integrated Circuit tester.
Back to the ACE home page.
Last modified 05:51:16 CDT 13 June 2011