ACE主要应用框架与类别(一):ACE的框架结构

来源:互联网 发布:淘宝网的淘口令怎么用 编辑:程序博客网 时间:2024/06/12 19:23

 ACE框架结构

 

u       OS适配层:为最常用的系统级操作提供包装函数。ACE已经移植到所有操作平台,OS适配层提供了共有的系统函数库,尽可能模拟操作平台的函数,以屏蔽不同操作系统之间的差异。函数涉及:并发和同步IPC共享内存事件多路分离显式动态链接文件系统等。这些函数主要被封装在ACE_OS类别中作为静态函数被引用以避免某些编译器不支持namespace问题

由于ACEOS适配层所提供的抽象,所有这些平台使用同一棵代码树。这样的设计极大地增强了ACE的可移植性和可维护性。

u       C++包装层可以直接在ACE_OS适配层之上编写高度可移植的C++应用。但是,大多数ACE开发者使用的是上图中所示的C++包装外观层。通过提供类型安全的C++接口(这些接口封装并增强本地的OS并发、通信、内存管理、事件多路分离、动态链接和文件系统API),ACE包装外观(wrapper facade)层简化了应用的开发。ACE C++包装提供了许多与ACE OS适配层一样的特性。但是,这些特性是采用C++类和对象、而不是独立的C函数来构造的。ACE采用了许多技术来降低或消除额外的性能开销。例如,ACE大量地使用C++内联来消除额外的方法调用开销;这样的开销可由OS适配层和C++包装所提供的额外的类型安全和抽象层次带来。此外,对于性能要求很高的包装,比如socket和文件I/Osend/recv方法,ACE会避免使用虚函数。

u       ACE框架层:框架是一组集成的组件,它们相互协作,为相关的应用族提供可复用的架构。框架是面向应用的可复用的构架,它实现了规范的控制流和类协作,提供的是半完成的应用。包括:实现事件多路分离机制的ReactorProactor框架,服务初始化组件-ACE Acceptor(接受器)Connector(连接器),服务配置组件ACE Service Configurator,分层的流组件ACE Stream,以及ORB适配器组件(通过ORB适配器与CORBA无缝集成)

u       ACE分布式网络化服务层:提供一些完整的、可复用的服务。