ace自适配通信环境中文技术_中篇ace程序员教程.pdf
ACE自适配通信环境中文技术文档 中篇:ACE程序员教程 作者:Umar Syyid usyyid@ 译者:马维达 /
致谢
谨对以下人士致以谢忱,是他们的协助使此教程成为可能。
Ambreen Ilyas ambreen@
James CE Johnson jcej@
Aaron Valdivia avaldivia@ 1
Douglas C. Schmidt schmidt@
Thomas Jordan ace@
Erik Koerber erik.koerber@siemens.at
Martin Krumpolec krumpo@pobox.sk
Fred Kuhns fredk@
Susan Liebeskind shl@
Andy Bellafaire amba@
Marina marina@
Jean-Paul Genty jpgenty@ 2 第1 章 ACE 自适配通信环境 ACE 自适配通信环境 Adaptive Communication Environment 是面向对象的框架和工具包,它为通信
软件实现了核心的并发和分布式模式。ACE 包含的多种组件可以帮助通信软件的开发获得更好的灵活性、
效率、可靠性和可移植性。ACE 中的组件可用于以下几种目的: 并发和同步 进程间通信 IPC 内存管理 定时器 信号 文件系统管理 线程管理 事件多路分离和处理器分派 连接建立和服务初始化 软件的静态和动态配置、重配置 分层协议构建和流式框架 分布式通信服务:名字、日志、时间同步、事件路由和网络锁定,等等。
1.1 ACE 体系结构 如图1-1 所示,ACE 具有分层的体系结构。在ACE 框架中有三个基本层次: 操作系统(OS )适配层 C++包装层 框架和模式层 3 图1-1 ACE 的体系结构
1.1.1 OS 适配层 OS 适配层是位于本地OS API 和ACE 之间的“瘦”代码层,它使ACE 的较高层与平台依赖性屏蔽
开来,从而使得通过 ACE 编写的代码保持了相对的平台无关性。只需要极少的努力,开发者就可以将
ACE 应用移植到任何平台上。 OS 适配层也是ACE 框架之所以可用于如此多的平台的原因所在。目前ACE 适用的OS 平台包括:
实时OS (VxWorks、Chorus、LynxOS 和pSoS )、大多数版本的UNIX (SunOS 4.x 和5.x; SGI IRIX 5.x
和6.x; HP-UX 9.x, 10.x 和11.x; DEC UNIX 3.x 和4.x; AIX 3.x 和4.x; DG/UX; Linux; SCO; UnixWare;
NetBSD 和FreeBSD )、Win32 (使用MSVC++和Borland C++ 的WinNT 3.5.x、4.x 、Win95 和WinCE )
以及MVS OpenEdition 。
1.1.2 C++包装层 C++包装层包括一些C++包装类,它们可用于构建高度可移植的和类型安全的C++应用。这是ACE
工具包最大的一部分,大约包含了总源码的50% 。C++包装类可用于: 并发和同步:ACE 提供若干并发和同步包装类,对本地 OS 多线程和多进程API 进行了抽象。这些 包装类封装用于线程和进程的原语,比如信号量、锁、栅栏 (Barrier )和条件变量。另外还有更高级 的原语可用,比如守卫(Guard )。所有这些原语共享类似的接口,因而很容易使用和相互替换。 IPC :ACE 提供若干C++包装类,封装不同OS 中不同的进程间通信(IPC )接口。例如,ACE 的包 装类封装了以下IPC 机制:BSD socket、TLI、UNIX FIFO 、流管道、Win32 命名管道,等等。ACE 还为消息队列提供包装类,包括特定的实时OS 的消息队列。 4 内存管理组件:ACE 包含的一些类可用于内存动态分配和释放;其中包括允许预分配所有动态内存 的类。这些预分配的内存随即通过ACE 提供的管理类的帮助进行本地管理。在大多数实时和嵌入式 系统中,这样的细粒度管理极为必要。另外还有一些类用于灵活地管理进程间共享内存。 定时器类:有多种不同的类可用于处理定时器的调度和取消。ACE 中不同种类的定时器使用不同的 底层机制 (堆、定时器轮 (timer wheel )或简单列表)来提供不同的性能特性。但是,不管底层使用 何种机制,这些类的接口都是一致的,从而使得开发者很容易使用任何一种定时器类。除了这些定时 器类,还有封装高分辨率定时器 (在部分平台上可用,比如VxWorks, Win32
您可能关注的文档
- 51单片机C语言学习资料.doc
- 51单片机C语言实验及实践教程.pdf
- 51单片机C语言实验及实践教程1.doc
- 51单片机C语言程序设计--速学教程实例(进阶篇)之蜂鸣器奏乐.pdf
- 51单片机Keil_C语言入门教程.pdf
- 5326.HTML5+CSS3网页布局和样式精粹.pdf
- 5442.菜鸟成长之路:Java程序员职场全攻略.pdf
- 5564.图灵程序设计丛书·Web开发系列:PHP基础教程(第4版).pdf
- 5795.高等学校“十二五”规划教材:C语言程序设计.pdf
- 5841.C语言程序设计.pdf
- 2025年新能源汽车铝合金型材表面处理报告.docx
- 2025_2026学年新教材高中历史第四单元资本主义制度的确立9资产阶级革命与资本主义制度的确立课时作业含解析新人教版必修中外历史纲要下.doc
- 2026版高考历史一轮训练课后限时集训10近代西方民主政治的确立与发展含解析人民版.doc
- 2025年光伏支架轻量化研发趋势与材料创新报告.docx
- 2025_2026学年新教材高中英语UNIT3SPORTSANDFITNESS预习新知早知道学案含解析新人教版必修第一册.doc
- 初中道德与法治八年级上册《爱我中华》单元教学设计(1).docx
- Unit9IlikemusicthatIcandancetoSectionA(3a3c)(教学课件)人教版(0)九年级英语全册().pptx
- 四年级下册《我的“自画像”》习作指导课教学设计——基于例文支架的精准表达训练.docx
- 星火燎原:新中国“两弹一星”伟业的奠基与精神传承.docx
- 中考英语一轮复习:解锁单项选择的逻辑与策略(第一讲).docx
最近下载
知传链电子书
- 附录 自测练习题参考答案-[4页]—人力资源管理专业知识与实务(初级)章节摘抄.pdf
- 自测练习题-[共3页]—人力资源管理专业知识与实务(初级)章节摘抄.pdf
- 工时制度的概念和内容-[3页]—人力资源管理专业知识与实务(初级)章节摘抄.pdf
- 自测练习题-[3页]—人力资源管理专业知识与实务(初级)章节摘抄.pdf
- 自测练习题-[3页]—人力资源管理专业知识与实务(初级)章节摘抄.pdf
- 制定和实施企业规章制度-[3页]-—人力资源管理专业知识与实务(初级)章节摘抄.pdf
- 员工离职管理-[3页]-—人力资源管理专业知识与实务(初级)章节摘抄.pdf
- 员工在职管理-[3页]-—人力资源管理专业知识与实务(初级)章节摘抄.pdf
- 员工入职管理-[3页]—人力资源管理专业知识与实务(初级)章节摘抄.pdf
- 自测练习题-[3页]-—人力资源管理专业知识与实务(初级)章节摘抄.pdf
原创力文档

文档评论(0)