First, Ace Summary
The ACE Adaptive Communication Environment (Adaptive Communication Environment) is a free to use, open source object-oriented (OO) architecture (framework) that implements a number of core patterns for concurrent communication software. Aces provide a rich set of reusable C + + wrapper skins (wrapper façade) and architectural components, common communication software tasks can be accomplished across multiple platforms, including event multiplexing and event processor allocation, signal processing, service initialization, interprocess communication, shared memory management, message routing, Distributed service dynamic (Heavy) configuration, concurrent execution and synchronization, and so on.
Ace's target users are developers of high-performance and real-time communications services and applications. It simplifies the development of use of interprocess communication, event multiplexing, explicit dynamic linking, and concurrent OO network applications and services. Additionally, ACE automates the configuration and reconfiguration of the system through dynamic linking of the service at runtime with the application.
The ACE is continuing to improve. Riverace Company (http://www.riverace.com) uses the open source business model for business support for Aces. In addition, many members of the ACE Development Group are currently in the process of developing the Ace ORB (tao,http://www.cs.wustl.edu/~schmidt/tao.html).
II. Benefits of using Aces
Many of the benefits of using Aces include:
(1) Enhanced portability: With the help of the ACE component, it is easy to write concurrent network applications on one OS platform and quickly migrate them to a variety of other OS platforms. And because ACE is open source free software, you don't have to worry about being locked on a particular operating system platform or compiler.
(2) Better software quality: Ace design uses a number of key models to improve software quality, including communication software flexibility, scalability, reusability, and modularity.
(3) Higher efficiency and predictability: ACE is carefully designed to support a wide range of application quality of service (QoS) requirements, including low response latency for deferred sensitive applications, high performance for high-bandwidth applications, and predictability of real-time applications.
(4) It is easier to switch to the standard advanced middleware: TAO uses the reusable components and patterns provided by Aces. It is the development of CORBA source code, follow the implementation of standards, and for high-performance and real-time system optimization. To this end, Ace and Tao are designed to work together to provide a comprehensive middleware solution.
III. the structure and function of Ace
The following figure shows the key components in the ACE and their hierarchical relationships:
The structure of the diagram and the components of each layer are described below.