本书从应用程序编程人员的角度来讲述MICO,是—本集MICO安装指南、指导教程和参考手册为一体的不可多得的参考书籍。本书将介绍如何使用MICO来构建和管理专业的、大型的CORBA应用程序,如何通过使用MICO来循序渐进地把与操作系统无关的应用程序改变成分布式应用程序,如何做到与其他CORBA实现具有完全的互操作性等。本书共分九章,每一章针对一个核心问题展开讲述。
本书对计算机应用程序开发工程师及技术人员具有很高的参考价值。
关于作者
致 谢
序 言
再版序言
前言
第1章 简介
1.1 什么是MIC0?
1.2 支撑平台
1.3 困难和问题?
1.4 本书概述
第2章 安装
2.1 先决条件
2.2 从CD上运行
2.3 从CD上安装
2.4 从源代码安装(Unix)
2.5 从源代码运行(Windows)
2.6 路径映射
第3章 使用MIC0学习CORBA
3.1 分布式系统中的对象
3.2 CORBA概述
3.3 实例程序.
第4章 程序实现概述
4.1 ORB
4.2 接口存储库(IR)
4.3 BOA
4.4 POA
4.5 IDL编译器
4.6 编译和链接包
第5章 C++映射
5.1 使用字符串
5.2 无类型值
5.3 数组
5.4 联合
5.5 接口继承
5.6 向下定型Downcasting
5.7 模块
5.8 异常
5.9 操作参数映射
第6章 互操作性
6.1 GIOP和IIOP
6.2 Lona的Orbix
6.3 Inprise的VisiBroker
第7章 命名服务
7.1 概述
7.2 名字服务器新进程
7.3 管理
7.4 例子
第8章 接口存储库浏览器
8.1 概念图
8.2 动态调用接口
8.3 解剖一个操作声明
8.4 一个一般DII接口
8.5 运行这个例子
8.6 使用CG编辑器
第9章 许可
9.1 GNU通用公共许可证有关复制.发布和修改的条款和条件
9.2 没有担保
9.3 最后的条款和条件如何将这些条款用到你的新程序
附录A 范例程序
A.1 Siegel的例子
A.2 Redlich的例子
A.3 Henning和Vinoski的例子
附录B 常见问题
术语表
参考文献
MICO历史简介
创作MICO的灵感起源于想写一本分布式系统的书. 但不是仅描写透明度问题和失败语义的“另一本分布式系统的书(yet another distributed system textbook YADST)”. 我们想写一本书, 书的主旨应该像Andrew Tanenbaum那本著名的操作系统(参见[12])一样. Tanenbaum选择了一个实用的方法, 首先他实现了一个操作系统(名字是MINIX, 代表Mini unix), 然后他围绕系统实现写了那本书.
我们的要求是对分布式系统做一些相似的事情. 这样做的好处是:不仅可以解释分布式系统的抽象概念, 还可以显示如何将概念变换成“代码行”. 所以我们首先必须决定要实现什么. 很快, 我们选择了实现基于流行的CORBA标准的中间件(middleware)(参见[6]). 作为对Tanenbaum的感谢, 我们决定把它命名为MICO(最初代表Mini CORBA).
我们已走过了很长的路. 有两种东西是Tanenbaum在写MINIX时所没有的:因特网和轰轰烈烈的开源软件运动. 我们认为在因特网上公布MICO源代码是无害的. 毕竟, 我们只关心书, 而不关心MICO本身的商业利润. 对我们来说在GNU的通用公共许可(General Public License)下发布源代码也是不错的, 虽然我们没人花费大量时间去了解它的真正主旨.
第一个开放MICO版本发布于1997年4月. 我们始料不及的是, 不断增加的用户群迫使我们不停地忙于修改错误和增加新特性. 最后MICO不再是“小型”的了, 而成为一个完全符合CORBA规范的版本. 它超出了我们最初的设想. 结果我们决定重命名MICO, 即它现在代表MICO Is CORBA(这种循环定义的灵感来自GNU, GNU代表GNU’s Not Unix).
现在, MICO被应用于学术和商业上. 学生们使用它去理解中间件平台的体系结构. 公司使用它则常常免除了使用商业CORBA实现的昂贵的许可费用. 开放组织认证MICO符合CORBA标准, 这又一次表明开放源代码可以生产出有商业价值的软件.
这本书是我们实现MICO后的一个延续. 本书通过从应用程序编程人员的角度来讲述MICo, 从而实现了一本关于分布式操作系统的书. MICO软件现在及以后将一直可以在因特网上自由获得. 这本书和附带的有预编译二进制代码的CD增加了可自由获得的软件的价值, 它们从应用程序编程人员的角度给了你一个全面的MICO文档.
参加一个开放源代码开发项目是十分有益的. 看到MICO被用于各处, 并且收到陌生人士的支持真是一件让人兴奋的事. 世界各地的无数的编程者都做出了或大或小的贡献, 从修改小错误到编写主要构件. 长久以来, MICO已经成为了一个社会工程. 开放源代码在商业软件发展中找到了合适的位置. 毫无疑问, MICO将会不断成长.