El entorno de comunicación adaptable ( ACE ) es un marco de software de código abierto que se utiliza para la programación de redes. Proporciona un conjunto de clases de C++ orientadas a objetos diseñadas para ayudar a abordar las complejidades y desafíos inherentes a la programación de redes mediante la prevención de errores comunes. [2]
ACE fue desarrollado inicialmente por Douglas C. Schmidt durante su trabajo de posgrado en la Universidad de California, Irvine . El desarrollo lo siguió hasta la Universidad de Washington en St. Louis , donde trabajó. ACE es un software de código abierto lanzado por el grupo Distributed Object Computer (DOC) de WU. Su desarrollo continuó en el Instituto de Sistemas Integrados de Software (ISIS) de la Universidad de Vanderbilt . [3]
ACE proporciona un uso estandarizado para funciones específicas del sistema operativo/máquina. Proporciona tipos de datos y métodos comunes [4] para acceder a las potentes pero complejas funciones de los sistemas operativos modernos . Estos incluyen: comunicación entre procesos , gestión de subprocesos , gestión eficiente de la memoria , etc.
Fue diseñado para ser portátil y proporcionar un marco común. El mismo código funcionará en la mayoría de Unix , Windows , VxWorks , QNX , OpenVMS , etc., con cambios mínimos. [5] Debido a este soporte multiplataforma , ha sido ampliamente utilizado en el desarrollo de software de comunicación . Algunos de los proyectos exitosos que han utilizado ACE incluyen: los satélites Motorola Iridium , el sistema australiano de control y alerta temprana aerotransportada (AEW&C) de Boeing Wedgetail y otros. [6]
ACE utilizó patrones de diseño de software . [7]