今天上午开会,导师又让一周内实现一个新任务,勉强的说着好,知道压力的事情又多了一个。下午jin决定去调整的宿舍了,我也决定搬走620,其实收拾东 西时很难受,同住了一年是舍不得的,就像friends离别时的感伤。期间给ning发了条短信,解释了一件事情,竟被认为坚持不了,哎,是不能坚持的, 如果前提变了,你看能不能。最近积累起来的不顺和压力也会让自己吃不消了,晚上叶子给自己很好的释放,真好。今天谢谢jin,ruan,lei,zhu, kong,jun,那么多东西,一句话或一个电话,大家都过来帮忙。这几天,还要谢谢can,jing,师姐的愉快对话。哦,前几天jiao,su, tian,qiao,bi让你们帮忙的事谢了,不管结果怎么样,你们都很够意思呢。
回 到正题,ACE中文全称是自适应通信环境,不过这么解释,很难理解它的作用,所以huihoo.com上的一篇文章很好,是有关于ACE详细介绍的译文, 应该是对华盛顿大学ACE一个文档的翻译,如果想了解ACE 的作用和结构,这个文章的部分内容能够给我们直观的认识,下面我就从中摘录一些内容,希望对刚学习ACE的人有帮助。
首先是对ACE的总体介绍:
ACE是一个免费的OO工具包,它包含一个丰富的集合,此集合中有可重用的wrappers、类、和可在很多操作系统平台上交互的通用的网络编程的框架。
ACE提供的任务包括:
事件分离和事件处理程序的调度
连接的建立和服务的初始化
交互通信和共享内存管理
动态配置和分布式通信服务
高级分布式服务组件(例如名字服务,事件服务,日志服务等)
然后是对ACE的结构总括:

图片上传有点问题,其实有个很好的分层结构图的。
ACE 工具包是用层次体系结构设计的。图说明了ACE组件的垂直和水平关系。ACE的底层是封装了现存操作系统网络编程机制的的面向对象的wrappers。高 层扩展了底层的wrappers,以提供面向对象的框架和组件,这些框架和组件覆盖了面向应用程序的网络任务和服务的较大范围
接下来是对每个层次的介绍:
ACE 操作系统适配层
ACE源码包含超过85,000行C++语句。大约9,000行代码属于操作系统适配层。该层将ACE的高层和与平台相关的非独立性屏蔽起来。它包括以下操作系统机制:
多线程和同步
进程间通信
事件分离
直接动态链接
内存映射文件和共享内存
ACE OO Wrappers
在操作系统适配层之上的是面向对象的wrappers,这些wrappers封装和加强了并发性,进程间通信(IPC),和现代操作系统的虚拟内存管理机制。
OO wrappers 的使用通过类型安全的面向对象接口封装操作系统的通信、并发和虚拟内存机制提高了应用程序的健壮性。这样就避免了应用程序直接访问底层操作系统库,而底层操作系统库是用弱类型的C接口实现的。
ACE 框架
ACE包含一个高级的网络编程框架,它集成并加强了低层OS wrappers。这个框架支持由应用程序服务组成的动态配置和并发网络后台程序。ACE的框架部分包含下列分类:
Reactor—ACE Reactor提供了可扩展的、面向对象的多路输出,根据不同事件的类型进行处理器调度(如基于I/O的事件、基于定时器的事件、信号和同步的事件等);
Service Configurator—ACE Service Configurator 支持在安装或运行时配置服务的应用程序结构;
Streams—ACE streams 组件简化了包含一个或多个层次相关的服务的并发通信软件的开发(例如协议栈)
ACE 网络服务组件
除了wrappers和框架,ACE提供了一个标准的网络服务组件库。这些组件在ACE中有两个角色:
⒈ 它们解释了如何利用ACE IPC wrappers,Reactor,ServiceConfigurator,ServiceInitialization, Concurrency, Memory Management, andStreams components;
⒉ 它们提供了通用分布式系统任务的可重用组件,例如日志,命名,时间同步等。
回 到正题,ACE中文全称是自适应通信环境,不过这么解释,很难理解它的作用,所以huihoo.com上的一篇文章很好,是有关于ACE详细介绍的译文, 应该是对华盛顿大学ACE一个文档的翻译,如果想了解ACE 的作用和结构,这个文章的部分内容能够给我们直观的认识,下面我就从中摘录一些内容,希望对刚学习ACE的人有帮助。
首先是对ACE的总体介绍:
ACE是一个免费的OO工具包,它包含一个丰富的集合,此集合中有可重用的wrappers、类、和可在很多操作系统平台上交互的通用的网络编程的框架。
ACE提供的任务包括:
事件分离和事件处理程序的调度
连接的建立和服务的初始化
交互通信和共享内存管理
动态配置和分布式通信服务
高级分布式服务组件(例如名字服务,事件服务,日志服务等)
然后是对ACE的结构总括:

图片上传有点问题,其实有个很好的分层结构图的。
ACE 工具包是用层次体系结构设计的。图说明了ACE组件的垂直和水平关系。ACE的底层是封装了现存操作系统网络编程机制的的面向对象的wrappers。高 层扩展了底层的wrappers,以提供面向对象的框架和组件,这些框架和组件覆盖了面向应用程序的网络任务和服务的较大范围
接下来是对每个层次的介绍:
ACE 操作系统适配层
ACE源码包含超过85,000行C++语句。大约9,000行代码属于操作系统适配层。该层将ACE的高层和与平台相关的非独立性屏蔽起来。它包括以下操作系统机制:
多线程和同步
进程间通信
事件分离
直接动态链接
内存映射文件和共享内存
ACE OO Wrappers
在操作系统适配层之上的是面向对象的wrappers,这些wrappers封装和加强了并发性,进程间通信(IPC),和现代操作系统的虚拟内存管理机制。
OO wrappers 的使用通过类型安全的面向对象接口封装操作系统的通信、并发和虚拟内存机制提高了应用程序的健壮性。这样就避免了应用程序直接访问底层操作系统库,而底层操作系统库是用弱类型的C接口实现的。
ACE 框架
ACE包含一个高级的网络编程框架,它集成并加强了低层OS wrappers。这个框架支持由应用程序服务组成的动态配置和并发网络后台程序。ACE的框架部分包含下列分类:
Reactor—ACE Reactor提供了可扩展的、面向对象的多路输出,根据不同事件的类型进行处理器调度(如基于I/O的事件、基于定时器的事件、信号和同步的事件等);
Service Configurator—ACE Service Configurator 支持在安装或运行时配置服务的应用程序结构;
Streams—ACE streams 组件简化了包含一个或多个层次相关的服务的并发通信软件的开发(例如协议栈)
ACE 网络服务组件
除了wrappers和框架,ACE提供了一个标准的网络服务组件库。这些组件在ACE中有两个角色:
⒈ 它们解释了如何利用ACE IPC wrappers,Reactor,ServiceConfigurator,ServiceInitialization, Concurrency, Memory Management, andStreams components;
⒉ 它们提供了通用分布式系统任务的可重用组件,例如日志,命名,时间同步等。