Adaptive Communication Environment: Difference between revisions
m Updated latest released version and home page |
Jerryobject (talk | contribs) Add: Template:Start date and age, Template:URL, Template:Official website. WP:LINKs: fix-cut WP:NOPIPEs, WP:REPEATLINK. Full terms define before WP:ABBReviations. |
||
Line 5: | Line 5: | ||
| author = |
| author = |
||
| developer = |
| developer = |
||
| released = |
| released = {{Start date and age|1993}} |
||
| latest release version = 6.3.3 |
| latest release version = 6.3.3 |
||
| latest release date = {{ |
| latest release date = {{Start date and age|2015|09|17}} |
||
| latest preview version = |
| latest preview version = |
||
| latest preview date = |
| latest preview date = |
||
Line 14: | Line 14: | ||
| genre = object-oriented C++ classes Framework for Network |
| genre = object-oriented C++ classes Framework for Network |
||
| license = |
| license = |
||
| website = |
| website = {{URL|www.dre.vanderbilt.edu/~schmidt/ACE.html}} |
||
| size = |
| size = |
||
}} |
}} |
||
The '''Adaptive Communication Environment''' ( |
The '''Adaptive Communication Environment''' ('''ACE''') is an [[open source]] [[software framework]] used for network programming. It provides a set of [[Object-oriented programming|object-oriented]] [[C++]] [[Class (computer science)|classes]] designed to help address the inherent complexities and challenges in network programming by preventing common errors.<ref>[http://www.riverace.com/acebooks/index.htm#cnpv1 C++ Network Programming, Volume 1, Schmidt and Huston, Addison Wesley Professional, 2001]</ref> |
||
==History== |
==History== |
||
ACE was initially developed by [[Douglas C. Schmidt]] during his graduate work at the [[University of California, Irvine]]. Development followed him to the [[Washington University, |
ACE was initially developed by [[Douglas C. Schmidt]] during his graduate work at the [[University of California, Irvine]]. Development followed him to the [[Washington University, St. Louis]], where he was employed. ACE was released by WU's Distributed Object Computer (DOC) group as [[open-source software]]. Development continued as part of the Institute for Software Integrated Systems (ISIS) at [[Vanderbilt University]].<ref>[http://www.riverace.com/acebooks/index.htm#apg ACE Programmer's Guide, The: Practical Design Patterns for Network and Systems Programming, Huston, Johnson and Syyid, Addison Wesley Professional, 2003]</ref> |
||
==Features== |
==Features== |
||
ACE provides a standardized usage for operating system/machine specific features. It provides common data types and methods<ref>Wrapper Facade, A Structural Pattern for Encapsulating Functions within Classes, Schmidt, http://www.cs.wustl.edu/~schmidt/PDF/wrapper-facade.pdf, access October 22, 2008</ref> to access the powerful but complex features of modern [[operating system]]s. These include: [[inter-process communication]], [[thread (computer science)|thread]] management, efficient [[memory management]], etc. |
ACE provides a standardized usage for operating system/machine specific features. It provides common data types and methods<ref>Wrapper Facade, A Structural Pattern for Encapsulating Functions within Classes, Schmidt, http://www.cs.wustl.edu/~schmidt/PDF/wrapper-facade.pdf, access October 22, 2008</ref> to access the powerful but complex features of modern [[operating system]]s. These include: [[inter-process communication]], [[thread (computer science)|thread]] management, efficient [[memory management]], etc. |
||
It was designed to be portable and provide a common framework. The same code will work on most [[Unix]]es, [[Microsoft Windows]], [[VxWorks]], [[QNX]], [[OpenVMS]], etc., with minimal changes.<ref>Porting ACE to a New OS, http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/docs/ACE-porting.html, accessed Oct. 22, 2008</ref> 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: [[Motorola]] [[Iridium (satellite)|Iridium]] satellites, [[Boeing Wedgetail]]'s Australian airborne early warning & control (AEW&C) system, and others.<ref>ACE and TAO Success Stories, http://www.cs.wustl.edu/~schmidt/TAO-users.html, Accessed Oct. 22, 2008</ref> |
It was designed to be portable and provide a common framework. The same code will work on most [[Unix]]es, [[Microsoft Windows|Windows]], [[VxWorks]], [[QNX]], [[OpenVMS]], etc., with minimal changes.<ref>Porting ACE to a New OS, http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/docs/ACE-porting.html, accessed Oct. 22, 2008</ref> 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: [[Motorola]] [[Iridium (satellite)|Iridium]] satellites, [[Boeing Wedgetail]]'s Australian airborne early warning & control (AEW&C) system, and others.<ref>ACE and TAO Success Stories, http://www.cs.wustl.edu/~schmidt/TAO-users.html, Accessed Oct. 22, 2008</ref> |
||
ACE used [[software design pattern]]s.<ref>Pattern-Oriented Software Architecture, Volume 2, Schmidt et al., Jon Wiley & Sons, Ltd, 2000</ref> |
ACE used [[software design pattern]]s.<ref>Pattern-Oriented Software Architecture, Volume 2, Schmidt et al., Jon Wiley & Sons, Ltd, 2000</ref> |
||
==See also== |
==See also== |
||
*[[TAO (software) |
*[[TAO (software)]] |
||
*[[Component-integrated ACE ORB |
*[[Component-integrated ACE ORB]] (CIAO, a [[CORBA]] implementation) |
||
*[[Communication software]] |
*[[Communication software]] |
||
*[[Cross-platform support middleware]] |
*[[Cross-platform support middleware]] |
||
==References== |
==References== |
||
{{ |
{{Reflist}} |
||
==External links== |
==External links== |
||
*[ |
*[[Official website|www.dre.vanderbilt.edu/~schmidt/ACE.html}} |
||
*[http://www.dre.vanderbilt.edu Distributed object computer (DOC) Group website] |
*[http://www.dre.vanderbilt.edu Distributed object computer (DOC) Group website] |
||
*[http://www.isis.vanderbilt.edu/research/DOC Institute for Software Integrated Systems (ISIS) website] |
*[http://www.isis.vanderbilt.edu/research/DOC Institute for Software Integrated Systems (ISIS) website] |
Revision as of 09:12, 24 April 2016
It has been suggested that this article be merged into Douglas C. Schmidt. (Discuss) Proposed since August 2013. |
Initial release | 1993 |
---|---|
Stable release | 6.3.3
/ September 17, 2015 |
Written in | C++ |
Type | object-oriented C++ classes Framework for Network |
Website | www |
The Adaptive Communication Environment (ACE) is an open source software framework used for network programming. It provides a set of object-oriented C++ classes designed to help address the inherent complexities and challenges in network programming by preventing common errors.[1]
History
ACE was initially developed by Douglas C. Schmidt during his graduate work at the University of California, Irvine. Development followed him to the Washington University, St. Louis, where he was employed. ACE was released by WU's Distributed Object Computer (DOC) group as open-source software. Development continued as part of the Institute for Software Integrated Systems (ISIS) at Vanderbilt University.[2]
Features
ACE provides a standardized usage for operating system/machine specific features. It provides common data types and methods[3] 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.[4] 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: Motorola Iridium satellites, Boeing Wedgetail's Australian airborne early warning & control (AEW&C) system, and others.[5]
ACE used software design patterns.[6]
See also
- TAO (software)
- Component-integrated ACE ORB (CIAO, a CORBA implementation)
- Communication software
- Cross-platform support middleware
References
- ^ C++ Network Programming, Volume 1, Schmidt and Huston, Addison Wesley Professional, 2001
- ^ ACE Programmer's Guide, The: Practical Design Patterns for Network and Systems Programming, Huston, Johnson and Syyid, Addison Wesley Professional, 2003
- ^ Wrapper Facade, A Structural Pattern for Encapsulating Functions within Classes, Schmidt, http://www.cs.wustl.edu/~schmidt/PDF/wrapper-facade.pdf, access October 22, 2008
- ^ Porting ACE to a New OS, http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/docs/ACE-porting.html, accessed Oct. 22, 2008
- ^ ACE and TAO Success Stories, http://www.cs.wustl.edu/~schmidt/TAO-users.html, Accessed Oct. 22, 2008
- ^ Pattern-Oriented Software Architecture, Volume 2, Schmidt et al., Jon Wiley & Sons, Ltd, 2000
External links
- [[Official website|www.dre.vanderbilt.edu/~schmidt/ACE.html}}
- Distributed object computer (DOC) Group website
- Institute for Software Integrated Systems (ISIS) website
- ACE Doxygen reference
- ACE github code repository