摘 要
摘 要
随 着 编 程 范 型 ( Programming Paradigm ) 、 分 布 式 计 算 ( Distributed
Computing)以及业务计算(Business Computing)这三个领域的技术发展,面
向服务的体系 结 构 SOA (Service-Oriented Architecture )和面向服 务 的计算
SOC(Service-Oriented Computing)得到了学界和业界广泛的关注和发展。SOA
提出了一种松耦合的、基于服务来组织计算资源的软件系统架构风格。
目前,在分布式计算领域,诸如分布式计算环境 DCE、公共对象请求代理
体系结构 CORBA、分布式对象组件模型 DCOM、EJB/J2EE 以及 Web 服务等都
正在朝基于“服务”的方向实现跨架构和跨企业的业务集成,以求使得各种异构
系统能够在统一的“服务”平台上实现互操作(interoperation),也使得各遗留系
统(Legacy System)可以继续得到应用,但是目前尚没有出现能够有效支持面
向服务的操作系统。
本论文首先针对现有 SOA 应用的体系结构进行了分析。分析表明,目前“服
务”抽象是在 SOA 应用体系结构中较为中间的层次实现的,其底层却仍然依赖
于传统的进程/线程抽象,不能直接有效地支持基于 SOA 的应用。针对这一现
象,本论文提出如下问题:能否使操作系统或者分布式操作系统直接以“面向服
务”这个统一的概念来实现它们之间或者与已有的分布式计算系统之间的互操作 ?
针对这个问题,本论文对建立一种面向服务的分布式操作系统进行了系统、深
入的研究与实践。
建立面向服务的操作系统(无论是单机操作系统还是分布式操作系统)最
关键也是最基本的问题是要给出服务在操作系统级上的抽象。本论文将服务的
概念引入操作系统的基本抽象中,对本实验室提出的服务体/执行流模型进行了
概念上的扩展,并依此提出了面向服务的操作系统的基本结构。在扩展后的服
务体/执行流模型中,服务体是服务的载体,端口是服务通信和访问的接口,而
小端口则是服务的实例。
对于面向服务的分布式操作系统 SODOS,本论文对如下几个方面的关键技
术进行了深入的研究与探讨,主要包括 SODOS 的体系结构、具有单一系统映
像的服务界面、服务的发布、远程服务请求的代理、命名和名字服务、多执行
流调度、服务副本和服务实例迁移以及一致性维护等。
从面向服务应用的需求看,除了要有一个面向服务的分布式操作系统来提
供服务的发布与发现以及服务通信之外,还必须为 SOA 应用提供基础服务的部
署方案,并为它提供服务组合路径优化方法。然而在这两个方面现有的研究大
多是针对大规模网络的,如 Internet、服务网格以及服务覆盖网络等,而不是针
对局部密集服务环境的。在局部密集服务环境中,无论是服务部署还是服务通
信,其系统特征都有别于上述大规模网络。据此,本论文对服务的部署和服务
组合的路径优化问题分别进行了深入研究,提出了相应的算法并进行了模拟实
验。
本论文研究中所做出的新贡献如下:
1) 首次将“服务”这一概念引入到操作系统的基本抽象中,并对服务体/执行
流模型 SEFM 进行了概念上的扩展,使其能够有效支持面向服务的计算;
- 1 -
评论3