The Adaptive Communication Environment (ACE) is an open sourcesoftware framework used for network programming. It provides a set of object-orientedC++classes designed to help address the inherent complexities and challenges in network programming by preventing common errors.[2]
ACE provides a standardized usage for operating system/machine specific features. It provides common data types and methods[4] to access the powerful but complex features of modern operating systems. These include: inter-process communication, thread management, efficient memory management, etc.
It was designed to be portable and provide a common framework. The same code will work on most Unixes, Windows, VxWorks, QNX, OpenVMS, etc., with minimal changes.[5] Due to this cross-platform support, it has been widely used in the development of communication software. Some of the successful projects that have used ACE includes: MotorolaIridium satellites, Boeing Wedgetail's Australian airborne early warning & control (AEW&C) system, and others.[6]