书书书
ICS35.080
L79
中华人民共和国国家标准
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
信息技术
开放分布式处理
参考模型
第
3
部分:体系结构
Informationtechnolo
gy
—
O
p
enDistributedProcessin
g
—
ReferenceModel
—
Part3
:
Architecture
(
ISO
/
IEC107463
:
1996
,
Informationtechnology
—
OpenDistributedProcessing
—
ReferenceModel
:
Architecture
,
IDT
)
20031124
发布
20040801
实施
中华人民共和国
国家质量监督检验检疫总局
发布
前
言
GB
/
T18714
在《信息技术
开放分布式处理
参考模型》总标题下,目前包括以下
3
个部分:
第
1
部分(即
GB
/
T18714.1
):概述;
第
2
部分(即
GB
/
T18714.2
):基本概念;
第
3
部分(即
GB
/
T18714.3
):体系结构。
本部分为
GB
/
T18714
的第
3
部分,等同采用国际标准
ISO
/
IEC107463
:
1996
《信息技术
开放分
布式处理
参考模型:体系结构》(英文版)。
按照
GB
/
T1.1
—
2000
的规定,对
ISO
/
IEC107463
作了下列编辑性修改:
a
)
“本标准”一词改为“本部分”;
b
)
对“规范性引用文件”一章的导语按
GB
/
T1.1
—
2000
的要求进行了修改;
c
)
在引用的标准中,凡已制定了我国标准的各项标准,均用我国的相应标准编号代替。对“规范
性引用文件”一章中的标准,按
GB
/
T1.1
的规定重新进行了排序。
本部分的附录
A
是规范性附录。
本部分由中华人民共和国信息产业部提出。
本部分由中国电子技术标准化研究所归口。
本部分起草单位:中国电子技术标准化研究所。
本部分主要起草人:郑洪仁、安金海。
Ⅰ
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
引
言
分布式处理的快速发展已经导致需要一个协调的框架,用以标准化开放分布式处理(
ODP
)。本参
考模型提供了这样的框架。它创建了一个体系结构,其中,对分布、协同工作和可移性的支持能被集成
在一起。
开放分布式处理的参考模型,从
ISO
/
IEC107461
(等同为
GB
/
T18714.1
)到
ISO
/
IEC107464
,是
基于从当前分布式处理的发展所获得的精确概念,并且尽可能地使用了体系结构规范的形式化描述
技术。
本参考模型包含:
———
GB
/
T18714.1
(
idtISO
/
IEC107461
)
概述:包含
ODP
的动机概述,它给出了关键概念的范
围、合理性和解释,以及
ODP
体系结构的轮廓。它包含了其他用户如何理解和应用这个参考
模型的解释性材料,这些用户包括标准的作者和
ODP
系统的结构师。它还包含了标准化所需
领域的分类。这个分类以本部分中所标识的一致性引用点来表示。这一部分是非规范性的。
———
GB
/
T18714.2
(
idtISO
/
IEC107462
)
基本概念:包含用于(任意)分布式处理系统规范化描
述的概念和分析框架的定义,它给出了与
ODP
标准一致性的原则和应用这些原则的方法。它
只达到了足够支持本部分和为建立新规范技术所需求的程度。这一部分是规范性的。
———
GB
/
T18714.3
(
idtISO
/
IEC107463
)
体系结构:包含所需特性的规范,这些特性使分布式
处理具备“开放性”资格。这些是
ODP
标准必须遵守的约束条件。它使用
GB
/
T18714.2
的
描述性技术。这一部分是规范性的。
———
ISO
/
IEC107464
体系结构语义:包含了在
GB
/
T18714.2
的第
8
章和第
9
章中定义的
ODP
建模概念的形式化。形式化是以不同的标准化形式描述支持的结构方式解释每个概念来实
现。这一部分是规范性的。
本部分包含一个附录(该附录是此参考模型的一部分)。
Ⅱ
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
信息技术
开放分布式处理
参考模型
第
3
部分:体系结构
1
范围
本部分:
———定义如何使用
GB
/
T18714.2
中的概念规定
ODP
系统;
———标识出将系统界定为
ODP
系统的特性。
它建立协调现行和今后
ODP
系统标准的发展的框架,并为这些标准提供参考。
2
规范性引用文件
下列文件中的条款通过本部分的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有
的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究
是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本部分。
GB
/
T9387.1
—
1998
信息技术
开放系统互连
基本参考模型
第
1
部分:基本模型(
idtISO
/
IEC74981
:
1994
)
GB
/
T9387.2
—
1995
信息处理系统
开放系统互连
基本参考模型
第
2
部分:安全体系结构
(
idtISO74982
:
1989
)
GB
/
T17901.1
—
1999
信息技术
安全技术
密钥管理
第
1
部分:框架(
idtISO
/
IEC117701
:
1996
)
GB
/
T18714.2
—
2002
信息技术
开放分布式处理
参考模型
第
2
部分:基本概念(
idtISO
/
IEC107462
:
1996
)
GB
/
T18794.1
—
2002
信息技术
开放系统互连
开放系统安全框架
第
1
部分:概述(
idtISO
/
IEC101811
:
1996
)
GB
/
T18794.2
—
2002
信息技术
开放系统互连
开放系统安全框架
第
2
部分:鉴别框架(
idt
ISO
/
IEC101812
:
1996
)
GB
/
T18794.3
—
2003
信息技术
开放系统互连
开放系统安全框架
第
3
部分:访问控制框架
(
idtISO
/
IEC101813
:
1996
)
GB
/
T18794.4
—
2003
信息技术
开放系统互连
开放系统安全框架
第
4
部分:抗抵赖框架
(
idtISO
/
IEC101814
:
1997
)
GB
/
T18794.5
—
2003
信息技术
开放系统互连
开放系统安全框架
第
5
部分:机密性框架
(
idtISO
/
IEC101815
:
1996
)
GB
/
T18794.6
—
2003
信息技术
开放系统互连
开放系统安全框架
第
6
部分:完整性框架
(
idtISO
/
IEC101816
:
1996
)
GB
/
T18794.7
—
2003
信息技术
开放系统互连
开放系统安全框架
第
7
部分:安全审计和报
警框架(
idtISO
/
IEC101817
:
1996
)
3
术语和定义
本部分采用下列术语和定义。
3.1
描述性定义
本部分采用
GB
/
T9387.1
—
1998
中定义的下列术语:
———传送语法
transfersyntax
1
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
本部分采用
GB
/
T18794.2
—
2002
中定义的下列术语:
———申请者
claimant
———交换鉴别信息
exchangeauthenticationinformation
———主角;委托者
principal
———可信第三方
trustedthirdparty
本部分采用
GB
/
T18794.3
—
2003
中定义的下列术语:
———访问控制信息
accesscontrolinformation
———访问判定功能
accessdecisionfunction
———访问强制功能
accessenforcementfunction
———发起者
initiator
———目标
target
本部分采用
GB
/
T18794.4
—
2003
中定义的下列术语:
———证据生成者
evidencegenerator
———证据使用者
evidenceuser
———证据验证者
evidenceverifier
———(抗抵赖数据)原发者
(
nonrepudiabledata
)
originator
———(抗抵赖数据)接受者
(
nonrepudiabledata
)
recipient
———抗抵赖证据
nonrepudiationevidence
———抗抵赖服务请求者
nonrepudiationservicerequester
———公证者
notary
本部分采用
GB
/
T18794.5
—
2003
中定义的下列术语:
———机密性保护数据
confidentialityprotecteddata
———隐藏
hide
———原发者
originator
———接受者
recipient
———揭示
reveal
本部分采用
GB
/
T18794.6
—
2003
中定义的下列术语:
———完整性保护数据
integrityprotecteddata
———原发者
originator
———接受者
recipient
———屏蔽
shield
———确认
validate
本部分采用
GB
/
T18794.7
—
2003
中定义的下列术语:
———报警收集器功能
alarmscolectorfunction
———报警检验器功能
alarmsexaminerfunction
———报警跟踪检验器功能
alarmstrailexaminerfunction
———审计跟踪归档器功能
audittrailarchiverfunction
———审计记录器功能
auditrecorderfunction
———审计跟踪检验器功能
audittrailexaminerfunction
———审计跟踪收集器功能
audittrailcolectorfunction
本部分采用
GB
/
T17901.1
—
1999
中定义的下列术语:
———密钥生成
keygeneration
———密钥注册
keyregistration
2
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———密钥认证
keycertification
———密钥注销
keyderegistration
———密钥分发
keydistribution
———密钥存储
keystorage
———密钥存档
keyarchiving
———密钥删除
keydeletion
本部分采用图
1
所示的
GB
/
T18714.2
—
2002
中定义的术语。
抽象
abstraction
;
引入
introduction
;
动作
action
;
不变量
invariant
;
活动
activity
;
联络
liaison
;
体系结构
architecture
;
空间位置
locationinspace
;
原子性
atomicity
;
时间位置
locationintime
;
行为
behaviour
;
名字
name
;
绑定
binding
;
命名上下文
namingcontext
;
类别
class
;
命名域
namingdomain
;
客户对象
clientobject
;
通知
notificatiom
;
通信
communication
;
对象
object
;
通信管理
communicationmanagement
;
义务
obligation
;
组合
composition
;
ODP
标准
ODPstandards
;
配置
configuration
;
ODP
系统
ODPsystem
;
一致性点
conformancepoint
;
开放分布式处理
opendistributedprcessing
;
消费者对象
consumerobject
;
感知引用点
perceptualreferencepoint
;
合约
contract
;
许可
permission
;
创建
creation
;
持续性
persistence
;
数据
data
;
策略
policy
;
分解
decomposition
;
生产者对象
producerobiect
;
删除
deletion
;
编程引用点
programmaticreferencepoint
;
分布式处理
distributedprocessing
;
禁止
prohibition
;
分布透明性
distributiontransparency
;
服务质量
QualityofService
;
<X>
域
<X>domain
;
引用点
referencepoint
;
实体
entity
;
细化
refinement
;
环境
environment
;
角色
role
;
差错
error
;
服务器对象
serverobject
;
创建行为
establishingbehaviour
;
衍生动作
spawnaction
;
失效
failure
;
稳定性
stability
;
故障
fault
;
状态
state
;
<X>
群
<X>group
;
子域
subdomain
;
标识符
identifier
;
子类型
subtype
;
信息
information
;
超类型
supertype
;
启动对象
initiatingobject
;
系统
system
;
实例
instance
;
<X>
模板
<X>template
;
例示
instantiation
;
术语
term
;
交互
interaction
;
线程
thread
;
交换引用点
interchangereferencepoint
;
交易
trading
;
界面
interface
;
类型
type
;
界面告示
interfacesignature
;
观点
viewpoint
;
互工作引用点
interworkingreferencepoint
;
图
1
取自
GB
/
T18714.2
—
2002
的术语
3
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
3.2
缩略语
本部分采用下列缩略语:
ODP
开放分布式处理
OSI
开放系统互连
4
框架
本参考模型定义的框架由下列部分组成:
———
5
个观点,即企业、信息、计算、工程和技术观点,这些观点为
ODP
系统规范提供基础;
———每一个观点的观点语言,定义按相应观点规定
ODP
系统的概念和规则;
———支持
ODP
系统所要求的功能规范;
———表明如何使用
ODP
功能达到分布透明性的透明性陈述。
ODP
系统和功能组合的体系结构是由计算语言、工程语言和透明性陈述的结合确定的。
4.1
观点
4.1.1
概念
4.1.1.1
企业观点:有关
ODP
系统及其环境的观点,它关注的是此系统用途、范围和策略。
4.1.1.2
信息观点:有关
ODP
系统及其环境的观点,它关注的是信息的语义和信息处理。
4.1.1.3
计算观点:有关
ODP
系统及其环境的观点,它通过将系统功能分解为界面处交互的对象来达
到分布。
4.1.1.4
工程观点:有关
ODP
系统及其环境的观点,它关注的是支持系统内对象之间分布式交互所要
求的机制和功能。
4.1.1.5
技术观点:有关
ODP
系统及其环境的观点,它关注的是此系统技术选用的观点。
4.1.2
使用观点
就满足对
ODP
标准的需要而言,选择企业、信息、计算、工程和技术观点是必要的和充分的。在合
适的抽象层次上,能将这些观点应用于整个
ODP
系统。在此情况中,环境定义
ODP
系统工作的上下
文。也可将这些观点应用于
ODP
系统的各个组成部分。在此情况中,组成部分的环境将包括系统环境
和其他系统组成部分的某种抽象。
注:这种抽象方法可以是将系统环境和其他系统组成部分组合在单个对象中的方法。
4.2ODP
观点语言
4.2.1
概念
4.2.1.1<Viewpoint>
语言:按
<Viewpoint>
观点定义的
ODP
系统规范用的概念和规则;例如,工
程语言:按工程观点定义的
ODP
系统规范用的概念和规则。
4.2.2
使用观点语言
本参考模型定义五个语言,每一个对应
4.1.1
中定义的观点之一。每个语言用于对应观点的
ODP
系统的规范。这些语言是:
———企业语言(第
5
章中定义);
———信息语言(第
6
章中定义);
———计算语言(第
7
章中定义);
———工程语言(第
8
章中定义);
———技术语言(第
9
章中定义)。
每个语言使用取自
GB
/
T18714.2
—
2002
的概念,并引入这些概念、陈述性规则和与有关的规范性
质有关的附加特定观点概念的细化。这些附加的概念也是用
GB
/
T18714.2
—
2002
的概念定义的。
系统规范包括一个或几个观点规范。这些规范必须相互一致。为了观点规范相一致的结构,在第
10
章给出了规则。制定者必须用一致地使用规范中的条款的其他方法予以实例说明。使用观点规范
4
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
越多的系统规范,其实现限制也越多。可以使用与这一观点相关的观点语言,或使用与其他观点相关的
观点语言规定一个观点中所标识的对象。不必完全按照每个观点规定对象达到相互一致的观点规
范集。
注
1
:取自
GB
/
T18714.2
—
2002
的术语清单列于图
1
。
注
2
:如果在所标识的观点语言中规定了什么附加规定,那么,用观点的名字限定
GB
/
T18714.2
—
2002
的术语(例
如在“计算对象”中)解释为使用了
GB
/
T18714.2
—
2002
的这一术语。
注
3
:如果此有关的观点语言对此术语设置了附加限制,那么,在一观点规范中未限定
GB
/
T18714.2
—
2002
的这
一术语的使用,例如,“界面”解释为这一术语似由计算观点的名字限定(即“计算界面”)。
4.3ODP
功能
4.3.1ODP
功能:支持开放分布式处理所要求的功能。
4.3.2
使用
ODP
功能:
参考模型在第
11
到
15
章中规定完成开放分布式处理所要求的功能。
每个
ODP
功能描述包含:
———开放分布式处理的功能的使用说明;
———有关此功能的结构和行为,足以保证参考模型全面完整性的陈述性说明;
———与其有关的其他
ODP
功能的说明。
4.4ODP
分布透明性
4.4.1
概念
4.4.1.1
访问透明性:屏蔽数据表示和调用机制的差异,能使对象之间互工作的分布透明性。
4.4.1.2
失效透明性:从一个对象来看,屏蔽其他对象(或本身)的失效和可能的恢复,能够实现容错的
分布透明性。
4.4.1.3
位置透明性:在对界面标识和绑定时,屏蔽有关空间位置信息使用的分布透明性。
4.4.1.4
迁移透明性:从一个对象来看,屏蔽系统改变此对象位置的能力的分布透明性。迁移通常用
来实现负载平衡和减少等待时间。
4.4.1.5
重定位透明性:屏蔽一个界面与其绑定的其他界面间的重定位的分布透明性。
4.4.1.6
复制透明性:屏蔽使用着一组行为上相互兼容的对象来支持一个界面的分布透明性。复制通
常用来提高性能和可用性。
4.4.1.7
持久透明性:从一个对象来看,屏蔽其他对象(或本身)的去激活和重激活的分布透明性。当
系统不可能持续地向一个对象提供处理、存储和通信功能时,去激活和重激活通常用来维护此对象的持
久性。
4.4.1.8
事务透明性:屏蔽一群分布对象间活动的协调,以实现无矛盾性的分布透明性。
4.4.2
使用分布透明性
分布透明性是分布式系统中重要的端用户要求。本参考模型定义一组分布透明性,这使得从系统
用户见到是实现分布透明性的
ODP
系统成为可能。分布透明性是选择性的;本参考模型包括在
ODP
系统中选用和组合分布透明性的规则。
本参考模型,对
4.4.1.1
到
4.4.1.8
中定义的每个透明性,包含下面两个定义:
———表示具体透明性要求的模式;
———将包含具体透明性要求的规范转变为明确地实现此透明性所指的屏蔽的规范的细化过程。
注
1
:在某些情况中(例如访问透明性),是没有模式的;在其他情况(例如,事务透明性),模式包含一个或几个参
数,它指定所要求透明性的准确形式。
注
2
:细化过程一般包含引入附加的行为,后者包括将一个或几个
ODP
功能用到规范中。
为保证参考模型全面完整性,第
16
章中的细化过程的规范对所要求的层次是陈述性的。
4.5
由此框架派生的标准
5
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
本参考模型为定义新标准和将现行标准用作
ODP
标准提供了一个框架。
ODP
标准是下列任何一种标准:
———
ODP
系统部件的标准;
———组成
ODP
系统部件的标准;
———建模和规定
ODP
系统的标准。
ODP
标准:
———使用企业语言规定策略;
———使用信息语言规定标准内和标准之间信息一致的使用和说明;
———使用计算语言规定界面的配置和行为;
———使用工程语言规定它们要求的基础设施;
———使用技术语言规定国际、私人或双方同意的规范的一致性。
ODP
系统的方法学、建模、编程、实现和测试的标准将作为整体来使用此框架。
ODP
标准能够建立在此参考模型一个子集上(例如,通过排除某交互形式、特定功能或透明性)。
这些标准也可能扩展此参考模型,倘若它们引入的这些扩充不改变或不与其规定相矛盾。扩展要使新
术语与此参考模型中定义的术语联系起来,例如,通过引入新的类型和新类型规则。
ODP
标准遵循此参考模型中的所有陈述性的说明。
4.6
一致性
企业、信息、计算和工程语言用来规定
ODP
系统的一致性要求。技术语言能用来确定
ODP
系统中
ODP
标准的一致性。定义为一致性点的每个界面具有一个信息规范,以能说明此界面的交互。在计算
和工程语言中给出识别一致性点的规则。
如果系统满足此标准的一致性要求,则它与
ODP
标准一致。
5
企业语言
企业语言由企业观点的
ODP
系统规范用的概念、规则和结构组成。
企业规范定义
ODP
系统的用途、范围和策略。
在此参考模型中,企业观点中的陈述限于少而基本的概念和规则集,着重指出企业规范的范围和
性质。
5.1
概念
企业语言包含
GB
/
T18714.2
—
2002
的概念和遵从
5.2
规则定义的下列概念。
5.1.1
社团:满足一个目标而形成的对象配置。目标表示为一个合约,此合约规定如何才能满足目标。
5.1.2<X>
联盟:
<X>
域的社团。
5.2
构建规则
企业规范利用下列每一项定义,并且企业语言能表示的
ODP
系统的用途、范围和策略:
———系统扮演的角色;
———系统承担的活动;
———有关系统的策略说明,包括与环境合约有关的说明。
在企业规范中,
ODP
系统和其工作的环境表现为一个社团。在某种描述级别中,
ODP
系统表现为
社团中的一个企业对象。
ODP
系统的目标和范围用其在社团中(是社团的组成部分)履行的角色和有
关这些角色的政策说明定义。用下列每一要素定义社团:
———组成社团的企业对象;
———每一个企业对象履行的角色;
———支配履行这些角色的企业对象之间交互的策略;
———通过履行角色的企业对象,支配资源创建、使用和删除的策略;
6
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———支配企业对象配置和对企业对象角色分派的策略;
———有关支配此系统环境合约的策略。
根据履行角色的企业对象的许可、义务、禁止和行为定义角色。企业对象可在社团中履行一个或几
个角色,其履行的角色由建立社团的合约确定。当他是一个社团的成员时,此企业对象可以根据其他社
团的合约条款在这些社团中继续履行角色。此企业对象可在不同的社团履行不同的角色。在不同社团
中履行适当角色的企业对象之间的交互认为是这些社团之间的交互。
注
1
:角色的例子包括策略行政管理者、总裁、服务提供者、拥有者、经理、股东、消费者。
注
2
:企业规范中环境合约的例子包括安全要求、立法要求和实施的法规。
注
3
:在企业规范中,术语“
<X>
对象”(其中
<X>
为角色)解释为“履行
<X>
角色的企业对象”;在一个企业对象
履行多种角色时,可以联络其名称例如,“拥有者司机对象”。
在履行一种角色时,对象须经委任或委派成为许可、义务和禁止。在某些角色中,允许对象改变策
略。与合约事务有关的动作有
5
种类型:
———一个对象对另一个对象承担义务(当前必须允许承担义务);
———一个对象对另一个对象履行义务;
———一个对象放弃对另一个对象的义务;
———一个对象从另一个对象获得许可,执行先前禁止它执行的某些动作;
———禁止一个对象执行先前曾被许可的动作。
注
4
:一种重要而特别的获得事例是许可的动作为执行性的场合,即能使下级角色的对象以履行上级角色的对象
的名义发布更进一步的许可或义务。这引起代理或委任的想法。
义务包括资源使用时的计帐和收费。计帐和付款设计成按照他们履行的角色,在对象之间重新分
配资源。
资源是可消耗的或不可消耗的。可消耗的资源在使用一些量之后自行删除。在
<X>
联盟中,目
标定义联盟中每个
<X>
域与此联盟中其他成员共享的资源。目标可以使每个域在使用其拥有的资源
时保持一定程度的自治权。建立
<X>
联盟的行为可以允许每个参加
<X>
域在决定是否成为联盟的
一部分时拥有自治权。
5.3
一致性和引用点
企业语言中的一致性说明要求
ODP
系统的行为与特定的目标和策略集一致。
宣称一致性的实施者必须标识访问系统的工程引用点和它们应用的工程、计算和信息规范。通过
这种行为,所标识的引用点成为一致性点。因此,可用企业语言术语说明一致性点处的交互以检查是否
违背这些企业规范。
企业规范可适用于
GB
/
T18714.2
—
2002
所标识的所有
4
种引用点(编程、感知、互工作和交换引
用点)。
6
信息语言
信息语言由信息观点的
ODP
系统规范用的概念、规则和结构组成。
信息规范定义信息语义和
ODP
系统中信息处理语义。
在此参考模型中,信息观点中的陈述限于少而基本的概念和规则集,着重指出信息规范的范围和
性质。
6.1
概念
信息语言包含
GB
/
T18714.2
—
2002
的概念和遵从
6.2
规则定义的下列概念。
6.1.1
不变模式:有关一个或几个信息对象的一组谓词,它们始终为真。这些谓词包含它们适用的对
象的可能状态和状态变化。
注:因此,不变模式是一个或几个信息对象的类型的规范,而此规范始终是要由这些对象可能呈现的行为遵守。
7
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
6.1.2
静态模式:一个或几个信息对象在某些时间点,受任一不变模式限制的状态的规范。
注:因此,静态模式是一个或几个信息对象在某个特定时间点类型的规范。这些类型是不变模式中规定的类型的
子类。
6.1.3
动态模式:一个或几个信息对象受任一不变模式限制的可允许的状态变化的规范。
注
1
:信息系统中的行为可以设计成从一个静态模式转移到另一种模式,即从一种类型到另一种类型的重新分类。
注
2
:在信息语言中,涉及一组对象的状态变化可以认为是这些对象之间的交互。不需要交互中涉及的所有对象
改变状态;在只读方式中可能涉及某些对象。
6.2
构建规则
信息规范利用信息对象的配置、这些对象的行为和
ODP
系统的环境合约定义此系统中的信息语义
和信息处理语义。
信息对象模板引用静态、不变和动态模式。信息对象之间的关系可以设计成这些信息对象的状态
部分。信息对象或是原子的或是表示为组成部分信息对象的组合体。组合对象的状态用其组成部分信
息对象的组合状态表示。原子信息对象模板表示为在一特定的抽象级别上没有模型的概念。组合信息
对象表示为由其他概念表示的派生概念。由于对象组合包括封装,因此,一个组合对象的组成部分的信
息对象不能是另一组合对象的组成部分。因而,由组合信息对象模板的实例导致的信息对象,只能作为
所说明组合对象的一部分存在,除此之外,没有意义。
由动态模式规定的可允许的状态变化可以包括新信息对象的创建和动态模式中所涉及的信息对象
的删除。可允许的状态变化可能要经受排序和暂时的限制。
注
1
:访问一个或几个信息对象的状态的结果可以设计成新信息对象的创建。
在信息规范中,信息对象的配置和这些对象的行为未必对分布是合适的(例如,对信息交互,不需要
有失效或位置的概念)。
注
2
:如果信息记法使用界面概念,那么所定义的界面本身不能是引用点;因此,对实施中呈现的界面无约定。
6.3
一致性和引用点
信息规范中的一致性说明要求
ODP
系统的行为与特定的一组不变、静态和动态模式一致。
宣称一致性的实施者必须列出访问系统的有关工程引用点和它们应用的工程和计算规范。通过这
种行为,所标识的引用点成为一致性点。因此,可用信息语言术语说明一致性点处的交互,以检查它们
是否与不变、静态和动态模式一致。
信息规范可适用于
GB
/
T18714.2
—
2002
所标识的所有
4
种引用点(编程、感知、互工作和交换引
用点)。
7
计算语言
计算语言由计算观点的
ODP
系统规范用的概念、规则和结构组成。
计算规范定义
ODP
系统的功能分解。功能分解是指将系统功能分解到界面上交互的对象中。
在计算观点中,应用和
ODP
功能由交互的计算对象的配置组成。
7.1
概念
计算语言包含
GB
/
T18714.2
—
2002
的概念和遵从
7.2
规则定义的下列概念。
7.1.1
信号:由启动对象到响应对象的单向通信导致的原子共享动作。
注:信号是一种交互。
7.1.2
操作:客户对象和服务器对象之间的交互,它或是询问或是通告。
7.1.3
通告:一种交互,即调用———它由客户对象启动,由此导致将信息从该客户对象运送到服务器对
象,并请求该服务器对象执行某一种功能。
7.1.4
询问:由下列二种交互组成的交互:
———第一种交互,即调用———它由客户对象启动,由此导致将信息从该客户对象运送到服务器对
8
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
象,并请求该服务器对象执行某一种功能,接着是:
———第二种交互,即终止———它由服务器对象启动,由此导致将信息从该服务器对象运送到客户对
象,以响应该调用。
注:在询问中,调用和终止总是成对的。通告不具有终止,因此,由调用组成的操作随后不可能有相关终止序列。
7.1.5
流:一序列交互的抽象。导致从生产者对象向消费对象的信息传送。
注:流可以用于,例如:在一序列交互的准确结构范围内进行抽象,或在包含模拟信息流的特殊情况的连续交互范
围进行抽象。
7.1.6
信号界面:其中,所有交互都是信号的界面。
7.1.7
操作界面:其中,所有交互都是操作的界面。
7.1.8
流界面:其中,所有交互都是流的界面。
7.1.9
计算对象模板:由能例示对象的一组计算界面模板、行为规范和环境合约规范组成的对象模板。
7.1.10
计算界面模板:用于信号界面、流界面或操作界面的界面模板。计算界面模板由信号、流或操
作界面告示(合适时),行为规范和环境合约规范组成。
7.1.11
信号界面告示:用于信号界面的界面告示。信号界面告示由有限的一组动作模板组成,对界面
处的每种信号类型有一个动作模板。每个动作模板由此信号的名称,其参数的数目、名称和类型以及关
于例示此模板的对象的起因指示(启动或响应,只能二者之一)组成。
7.1.12
操作界面告示:用于操作界面的界面告示。操作界面告示由一组通告和询问告示(合适时)(此
界面的每种操作类型有一个告示)组成,为了将此界面作为一个整体还包括关于例示模板的对象的起因
指示(客户或服务器,只能二者之一)。
每个通告告示是包含调用名称和其参数的数目、名称和类型二部分的动作模板。
每个询问告示由具有下列要素的动作模板组成:
———调用的名称;
———其参数的数目、名称和类型;
———一组有限的、非空的动作模板,对每种可能的调用的终止类型有一个动作模板,每一个包含终
止的名称和其参数的数目、名称和类型。
7.1.13
流界面告示:对流界面的界面告示。流界面由一组有限的动作模板组成,流界面中的每种流类
型有一个动作模板。流的每个动作模板包含流的名称、流信息类型和关于例示此模板的对象的起因指
示(即生产者或消费者,只能二者之一)。
注
1
:短语“
X
的补充界面告示”(
X
本身是个界面告示)描述除了起因之外,所有其他面对
X
都是相同的界面告示,
其起因与
X
中的起因相对立。
注
2
:许多界面定义语言(
IDL
)只捕获告示的动作模板并视用
IDL
确定适用的起因的上下文而定。
7.1.14
绑定对象:支持一组其他计算对象之间绑定的计算对象。
注:绑定对象受特别规定支配(见
7.2.3
)。
7.2
构建规则
计算规范用分布透明术语描述
ODP
系统的功能分解,如:
———计算对象(包括绑定对象)的配置;
———这些对象的内部动作;
———这些对象中发生的交互;
———这些对象及其界面的环境合约。
计算规范受计算语言的规则制约。这些规则包括:
———交互规则(见
7.2.2
)绑定规则(见
7.2.3
)和类型规则(见
7.2.4
),这些规则提供分布透明
交互;
———适用于所有计算对象的模板规则(见
7.2.5
);
9
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———适用于所有计算对象并标识计算活动中潜在失效点的失效规则(见
7.2.6
)。
提供可移植性规则(见
7.2.7
)以指导
ODP
可移植性标准的开发者。
计算规范定义一组初始的计算对象和它们的行为。配置将会改变,当计算对象:
———进一步例示计算对象;
———进一步例示计算界面;
———执行绑定动作;
———影响对绑定对象的控制功能;
———删除计算界面;
———删除计算对象。
7.2.1
命名规则
计算语言定义的每类名称有一个相关的上下文,有:
———信号界面告示中的信号名称是此告示上下文中的标识符;
———流界面告示中的流名称是此告示上下文中的标识符;
———操作界面告示中的调用名称是此告示上下文中的标识符;
———操作界面告示中的终止名称是出现在操作模板上下文中的标识符;
———信号模板中参数的名称是此模板上下文中的标识符;
———操作界面告示调用模板中的参数名称是此模板上下文中的标识符;
———操作界面终止模板中的参数名称是此模板上下文中的标识符;
———信号界面告示信号模板中的参数名称是此模板上下文中的标识符。
注
1
:因此,信号名称在任何一个信号界面告示中是不同的,但是在不同的告示中信号可有相同的名称,等等。
计算界面标识符在其上下文中是无岐义的(即在此上下文中不能与一个以上的计算界面相关联)。
用于计算界面标识符的上下文的选择是语言设计的事情,因而超过本参考模型的范围。因此,本参考模
型对计算界面标识符用的上下文程度不加限制。因而不依赖:
———计算界面标识符用的上下文多少[例如,关于它们与工程语言结构(例如,结点或通信域)有关
的假设];
———计算界面标识符的唯一性(即允许同义语);
———凡是出现计算界面标识符的地方,此标识符表示相同的计算界面(即名称不必是“全球的”)。
注
2
:特定的计算记法可能没有表示计算标识符的显式术语;因此,在此记法中计算界面标识符是隐含的;然而,它
们仍应受上述规则支配。
7.2.2
交互规则
计算对象的每个交互发生在其计算界面之一处。计算语言以计算界面处允许的行为加以限制。无
绑定界面处没有交互。绑定规则(见
7.2.3
)对如何绑定界面施加限制。
计算语言的交互部分支持三种交互模型,其中每一种具有相关联计算界面类别:
———信号和信号界面;
———流和流界面;
———操作和操作界面。
除了支持的交互类别不同外,交互模型在它们的失效特性上亦不同。流或操作的参与者在不同时
间可能对一个交互有不一致的观点,特别是在发生失效时。与流以及操作不同,不存在信号部分失效的
概念———对这种交互的二个参与者而言,信号要么同样成功,要么同样失败。
7.2.2.1
信号交互规则
一个计算对象,它提供给定信号界面类型的信号界面:
———启动在界面告示中具有启动起因的信号;
———响应在界面告示中具有响应起因的信号。
01
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
7.2.2.2
流交互规则
一个计算对象,它供流界面:
———产生在界面告示中具有生产者起因的流;
———接收在界面告示中具有消费者起因的流。
7.2.2.3
操作交互规则
使用操作界面的客户对象调用界面告示中已命名的操作。提供操作界面的服务器对象期待界面告
示中已命名的任一操作。在询问的情况下,服务器通过启动服务器界面告示中为此操作而命名的任一
终止响应此调用。客户期待客户界面中为此操作命名的任一终止。操作的持续时间是任意的,除非适
用于此对象和所涉及的界面的环境合约另有规定。
注:如果客户线程调用询问链,则调用和终止的双向“握手”保证服务器按客户启动它们的相同次序进行响应操作。
如果客户调用通告链(或包含通告和调用的链),则没有握手保证服务器按此次序响应通告。除非在适用于这
种交互的环境合约中是隐含的。对在先前的分解动作中的不同下行活动中的询问或通告是没有次序保证的。
7.2.2.4
参数规则
用于信号、调用和终止的参数可以包括计算界面的标识符和计算界面告示类型。
注
1
:计算界面告示参数的可能性使计算告示类型系统有更高的阶。例如在交易中,要求告示类型的显式表示,这
种情况下,入口和出口操作参数包括告示类型:
trader.import
(
T
:
Type
…);(
service
:
T
)
->failed
(
reason
:
String
)
trader.export
(
T
:
Type
,
service
:
T
);(…)—
>failed
(
reason
:
String
)
这引入对动态告示子类型检查(见
7.2.5.1
)的需要。
计算界面标识符的形式参数由计算界面告示类型限定。相应的实际参数必须引用具有此界面告示
类型(或其子类之一)的界面。只能使用实际参数,好象它引用了具有与形式参数(或格式参数子类之
一)相同的告示类型的计算界面。交互之后,发起者和响应者可以引用所标识的界面,尽管可能不同的
计算界面标识符。
注
2
:此规则防止实际参数引用界面的用户能够执行形式界面告示类型的交互之外的附加交互,即使实际参数引
用的界面是与形式参数有关联的界面告示类型的子类型。
7.2.2.5
流、操作和信号
流和操作能用信号定义。这能使信号界面用作说明多方绑定,端到端服务质量特征和不同类别界
面之间组合绑定(例如,流与操作界面绑定)的基础。
使用信号的流定义有赖于有关的流界面规范中抽象的交互的细节,因此,超过了本参考模型的
范围。
通过将相应的信号界面引入到客户操作界面和所涉及的服务器操作界面,信号能进行建模操作:
———在对应于客户操作界面的信号界面中,有一个信号(调用提交)对应于具有相同参数的每种调
用,在包含询问的界面情况,有一信号(终止交付)对应于具有与此终止相同参数的每种可能的
终止;
———在对应于服务器操作界面的信号界面中,有一个信号(调用交付)对应于具有相同参数的每种
调用,在包含询问的界面情况,有一个信号(终止提交)对应于具有与此终止相同参数的每种可
能的终止。
这样在导致的信号集和被描述的操作界面中的调用和终止集之间创建等价性。
7.2.3
绑定规则
在本参考模型中,以绑定动作定义绑定。使用这些动作叫做显式绑定。有两种绑定动作:原始绑定
动作和复合绑定动作。
原始绑定动作直接绑定两个计算对象。复合绑定动作可由通过一个绑定对象链接两个或多个计算
对象的原始绑定动作表示。在计算绑定中绑定对象的存在给出表示配置和服务质量控制(见
7.2.3.3
)
的手段。
11
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
对表示绑定动作没有条款的记法中,绑定是隐含的。在本参考模型中不定义服务操作界面以外的
隐式绑定,因为,在其他情况下,它本身不明确对后续的交互应在何处起动绑定。所需的附加信息能用
显式绑定动作提供。
7.2.3.1
服务器操作界面的隐含绑定规则
如果通过客户对象的调用引用未将客户绑定的服务器操作界面,那么要求隐式绑定。如果绑定到
此服务器的合适客户操作界面不存在,则建立隐式绑定包括下列程序。
———为服务器界面创建一个补充告示类型的客户操作界面;
———将此客户操作界面与服务器操作界面绑定;
———使用客户操作界面调用服务器对象;
———(任选)当操作完成时,删除客户界面。
7.2.3.2
原始绑定规则
原始绑定动作能使启动此动作的对象界面与另一个界面(另一个对象的或本身的)绑定。这种绑定
动作由二个标识符参数化,对所涉及的每个界面有一个标识符。原始绑定动作的先决条件是所涉及的
二个界面是相同类型的(即,信号、流或操作),是互补起因的,以及它们的告示类型是互补的。
原始绑定或是在两个有关界面之间建立绑定,或是失败。
为了删除已与另一个界面绑定的界面,使用原始绑定动作删除绑定及界面。
7.2.3.3
复合绑定规则
复合绑定动作能使一组界面绑定,使用绑定对象以支持四种绑定。除此条款的规定之外。绑定对
象是原始的计算对象。在绑定对象模板中,利用一组格式角色参数(其中每一个与一个界面模板相连
系)表示行为规范。
复合绑定动作由绑定对象模板和一组为交互绑定在一起的界面参数化。
对绑定对象模板中每个格式角色,复合绑定的先决条件是:
———相应的界面参数与绑定对象模板中格式角色相联系的界面模板必须是同类的(即,信号、流或
操作);
———相应的界面参数对与绑定对象模板中的格式角色相联系的界面模板的起因必是互补的;
———相应的界面参数必须是与绑定对象模板中的格式对象相联系的界面模板中告示类型的子类。
复合绑定动作由下列步骤组成:
———从绑定对象模板中例示绑定对象;
———例示与绑定对象模板中的格式角色参数相联系的绑定对象内的每个界面模板;
———绑定对象使用原始绑定动作将每个这样的界面与相应实际参数中引用的界面绑定;
———例示一组控制界面,并作为绑定动作的结果,返回这些界面用的标识符(即,变成执行此动作的
对象的状态部分———随之,此对象通过与其他计算对象的交互传送标识符)。
绑定对象的控制界面提供部分或全部下列功能:
———监视绑定的使用;
———监视对绑定的变化;
———批准对绑定的改变;
———改变绑定的成员;
———改变由绑定使能的通信模式;
———改变绑定服务质量;
———按整体删除绑定。
对一绑定对象删除绑定的影响由绑定对象的行为确定。
7.2.4
类型规则
本参考模型规定计算界面用的告示类型规则。告示子类型划分规则定义一个界面替代另一个界面
21
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
的最低要求。这些规则是建立在计算界面(即,信号、流和操作界面)交互语义上的。它们充分保证所代
替的界面能够一致地解释发生的任一交互的结构。
具有替换交互语义的界面告示子类型划分规则可用信号加以定义;这些定义由
ODP
标准引入。
7.2.4.1
信号界面告示子类型划分规则
信号界面告示子类型划分定义在附录
A
中给出。对不被递归定义的信号界面类型,这些规则综述
如下。
如果满足下列条件,则信号界面告示类型
X
是信号界面告示
Y
的子类型:
———对
Y
中的每个启动信号告示,在
X
中有一个相应的启动信号告示,其名称相同,参数数目和参
数的名称相同并且
X
中的每个参数类型是
Y
中相应参数的子类型;
———对
X
中的每个响应信号告示,在
Y
中有一个相应的响应信号告示,其名称相同,参数数目和参
数名称相同,并且
Y
中的每个参数类型是
X
中相应参数的子类型。
7.2.4.2
流界面告示子类型划分规则
流告示子类型划分规则取决于有关的流界面的定义中抽象的交互的细节。特别是,这些细节将阐
明子类型划分规则是否允许这两个界面中流集之间的不完全的对应。因此,完全的告示子类型划分规
则超过本参考模型的范围。有关流告示子类型划分的规则的限制在附录
A
中给出。对不递归定义的
流界面类型,这些限制综述如下。
如果具有相同名称的全部流满足以下条件,则流界面
X
是流界面
Y
的告示子类型:
———如果起因是生产者,
X
中的信息类型是
Y
中信息类型的子类型;
———如果起因是消费者,
Y
中的信息类型是
X
中信息类型的子类型。
7.2.4.3
操作界面告示子类型划分规则
操作界面告示子类型划分规则在附录
A
中给出。对不被递归定义的界面类型,这些规则综述
如下。
如果满足以下条件,则操作界面
X
是界面
Y
的告示子类型:
———对
Y
中的每个询问,在
X
中有一个询问告示(
X
中的相应询问),其用相同名称定义询问;
———对
Y
中的每个询问告示,
X
中相应的询问告示具有相同的参数数目和名称;
———对
Y
中的每个询问告示,每个参数类型是
X
中相同询问告示的相应参数类型的子类型;
———
Y
中的询问告示的一组终止名称包含
X
中相应询问告示的一组终止名称;
———对
Y
中的每个询问告示,
X
中相应询问告示的给定终止与
Y
中询问告示相同名称的中止中的
结果参数数目和名称相同;
———对
Y
中的每个询问告示,与
X
中相应询问告示中的给定终止相关联的每个结果类型是
Y
中
相同名称终止的结果类型的子类(具有相同名称);
———对
Y
中的每个通告,在
X
中有一个通告告示(
X
中的相应告示),其用相同的名称定义通告;
———对
Y
中的每个通告告示,
X
中相应的通告告示具有相同的参数数目和名称;
———对
Y
中的每个通告告示,每个参数类型是
X
中相应通告告示中相应参数类型的子类型。
7.2.5
模板规则
7.2.5.1
计算对象模板规则
计算对象(包括绑定对象的特例)能:
———启动或响应信号;
———生产或消费流;
———启动操作调用;
———响应操作调用;
———启动操作终止;
———响应操作终止;
31
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———例示界面模板;
———例示对象模板;
———绑定界面;
———访问和修改其状态;
———删除其一个和几个界面;
———自身删除;
———衍生、分叉和联合活动;
———获得交易功能实例的计算界面标识符;
———测试一个计算界面告示是不是另一个界面告示的子类。
其中任何一个动作可能会失败。
7.2.5.2
计算界面实例
计算界面实例为执行实例的对象中的新界面建立一个或多个计算界面标识符。
7.2.5.3
计算对象模板实例
计算对象模板中的行为表示包括在例示模板时发生的行为(例示的行为)的描述。环境合约规范描
述在例示模板时在例示的对象和其环境之间要建立的合约。例示行为包括界面例示时,此例示为曾启
动此例示的对象中的界面建立标识符。
7.2.6
失效规则
对一对象可见的失效模式由其行为和环境合约规范确定。
在
7.2.5.1
中的任一计算动作可能会失败,并且失效能由执行此动作的对象观察到。交互可能由
于所涉用对象或对象之间的绑定或这二种情况的失效而中断。在信号情况下,失效对交互的所有参与
者是相同的、是可见的。在流和操作情况下,失效未必会在所有参与者中发生,对每个失败的参与者,同
时间并具有不同的参数。
注:交互失效的例子包括安全失效、计算失效和资源失效。
对操作而言,响应调用或启动终止的服务器失效能由所涉及的客户计算对象观察到。
如果未能满足环境合约,对象模板或计算界面模板的实例失败。如果未能满足绑定界面中每一个
环境合约,绑定动作失败。
7.2.7
可移植性规则
ODP
系统中可移植性标准对
7.2.5.1
所述的动作规定动作模板。有关这些模板的规范是语言设
计的事情,因此,超过本参考模型的范围。除了语法关注外,可移植性标准还必须给出特定的语义结果,
包括:
———对动作模板,包括分叉和联合动作的连接模板能使并发和同步的组合规则;
———对对象和界面模板规范,以及它们的组合规则有用的术语;
———通告的次序和交付保证。
可移植性标准可以直接(例如,作为库功能)或间接表示整个语法结构内所允许的动作。按照式样
(例如,以事件为基础的处理模型与以线程为基础的模型)和内容(例如,所支持的计算动作次数),可能
有可供选择的可移植性标准。本参考模型标识出二种可移植性标准。
基本的可移植性标准是至少包括下列内容的标准:
———询问;
———隐式绑定;
———计算对象例示;
———计算界面例示;
———访问和修改状态;
———对有衍生、分叉和联合动作的线程的支持;
41
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———获得提供交易功能的计算界面的标识符(使得能够后续对此功能的绑定和使用);
———界面告示子类型测试。
扩充的可移植性标准是包括
7.2.5.1
中所述的所有功能的标准。
7.3
一致性和引用点
在计算语言中,在任一对象的界面上存在引用点。每个引用点可以成为编程一致性点、感知一致性
点、互工作一致性点或交换一致性点,这取决于具体标准或系统规范中指定引用点为一致性点的一组
要求。
在计算语言中,这些要求按照界面和确定此界面与对象一致的对象模板规定。
宣称与计算规范一致的实施者必须列出与所要求的计算引用点相对应的工程引用点以及将透明性
和工程化结构应用于它们的状态。通过这个动作,所标识的引用点成为一致性点。因此,可用计算语言
术语说明一致性点处的交互以确定是否违背计算规范。
编程一致性点处对象一致性能用标准化的界面规范语言和满足可移植性规则的语言绑定测试。互
工作一致性点处对象一致性能用在通信协议中可见的交互测试。
8
工程语言
工程语言由工程观点的
ODP
系统规范用的概念、规则和结构组成。
工程规范定义支持
ODP
系统中的对象之间分布交互所要求的机制和功能。
8.1
概念
工程语言包含
GB
/
T18714.2
—
2002
的概念和遵从
8.2
规则定义的下列概念。
8.1.1
基本工程对象:要求分布式基础设施支持的工程对象。
8.1.2
对象簇:将若干基本工程对象形成单个单元的一种配置,以便去激活、设检测点、重激活、恢复和
迁移。
注:对象簇的一个例子是包含对象的虚拟存储器的一段。
8.1.3
对象簇管理器:管理对象簇中若干基本工程对象的一个工程对象。
8.1.4
对象包:为了封装处理和存储,而将若干工程对象组成单个单元的一种配置。
注:对象包的一个例子是虚拟机(例如处理)。
8.1.5
对象包管理器:一种工程对象,它管理对象包中的工程对象。
8.1.6
核:一种工程对象,它协调供其所属结点内其他工程对象使用的处理、存储和通信功能。
注:操作系统(内核)是核的一个例子。
8.1.7
结点:将若干工程对象组成单个单元的一种配置,以便空间定位,而且它包括一组处理、存储和
通信功能。
注
1
:支持(操作系统和应用)的计算机和软件是结点的一个例子。
注
2
:结点可以具有工程规范并不关注的内部结构。例如,结点可能是在一个操作系统控制下的并行计算机。
8.1.8
通道:由桩、绑定器、协议对象和截转器组成的、提供一组界面当中与基本工程对象绑定的一种
配置,在整个通道内可能发生交互。
注:要求通道的绑定,在工程语言中称为分布式绑定;不要求通道工程对象之间的绑定(例如同一个对象簇中的工
程对象之间)称为本地绑定。
8.1.9
桩:通道中的一种工程对象,它解释由此通道运送的交互并按照此解释执行任何必要的转换或
监视。
注:例如,桩可以执行将参数调到通信缓冲器,或记录审计目的的活动。
8.1.10
绑定器:通道中的一种工程对象,它维护正在交互的基本工程对象之间的分布式绑定。
8.1.11<X>
截转器:通道中的一种工程对象,它置于
<X>
域之间的边界处。一个
<X>
截转器:
———执行检查以实施或监视有关不同域中基本工程对象之间所允许的策略;
51
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———执行转换以屏蔽不同域中基本工程对象数据解释的差异。
注:子网间的中继器是截转器的一个例子。
8.1.12
协议对象:通道中的一种工程对象,它与同一通道中的其他协议对象通信,以获得基本工程对
象(可能在不同的对象簇,不同的对象包,不同的结点中)之间的交互。
8.1.13
通信域:能够互工作的一组协议对象。
8.1.14
通信界面:能够与互工作引用点处截转器对象或另一个协议对象的界面绑定的协议对象界面。
8.1.15
绑定端点标识符:在对象包命名上下文中,为交互目的由基本工程对象用来选择其所涉及的绑
定之一的标识符。
注
1
:存储地址(对表示工程界面的一种数据结构而言)是绑定端点标识符的一个例子。
注
2
:不管所涉及的绑定是本地的还是分布式的,可以使用相同的绑定端点标识符形式。
8.1.16
工程界面引用:在工程界面引用管理域的上下文中,用于对分布式绑定可用的工程对象界面的
标识符。
注:工程界面引用对建立分布式绑定是必要的,并且与由基本工程对象为了交互而使用的绑定端点标识符不同。
8.1.17
工程界面引用管理域:工程界面引用管理域的一组结点,它组成命名域,以便分配工程界面
引用。
8.1.18
工程界面引用管理策略:管理工程界面引用管理域联盟的一组允许和禁止。
8.1.19
对象簇模板:用于对象配置和例示出这些对象并建立初始绑定所要求的任一活动的对象模板。
8.1.20
检测点:由一工程对象的状态和结构导出的、能够用来例示(设检测点时与原发对象状态一致
的)另一个工程对象的对象模板。
8.1.21
设检测点:创建检测点。检测点只能在所涉及的工程对象满足设检测点策略规定的先决条件
时创建。
8.1.22
对象簇检测点:在对象簇中包含基本工程对象检测点的对象簇模板。
8.1.23
去激活:设对象簇检测点,随后删除对象簇。
8.1.24
克隆:从对象簇检测点中例示出对象簇。
8.1.25
恢复:在对象簇失效或删除之后克隆一个对象簇。
8.1.26
重激活:在一个对象去激活后再克隆此对象簇。
8.1.27
迁移:将对象簇移到不同的对象包。
8.2
构建规则
工程规范通过以下方法定义支持
ODP
系统功能分布所要求的基础设施:
———标识管理物理分布、通信、处理和存储所要求的
ODP
功能;
———标识支持这些
ODP
功能的不同工程对象的角色(例如核)。
利用下列方式表示工程规范:
———工程对象配置(构成对象簇、对象包和结点);
———在工程对象中发生的活动;
———工程对象的交互。
工程规范受工程语言规则限制,这包括:
———通道规则(见
8.2.1
)、界面引用规则(见
8.2.2
)、分布式绑定规则(见
8.2.3
)和工程对象中分
布透明的交互规定的重定位规则(见
8.2.4
);
———管理工程对象配置的对象簇规则(见
8.2.5
)、对象包规则(见
8.2.6
)和结点规则(见
8.2.7
);
———失效规则(见
8.2.9
)。
8.2.1
通道规则
通道支持工程对象之间的分布透明的交互。例如,这包括:
———客户对象和服务器对象之间操作执行;
61
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———一组对象对另一组对象进行组组播;
———包含多个生产者对象和多个消费者对象的流交互。
工程对象之间的交互必然伴随下列部分或全部内容的传送:
———工程界面引用;
———对象簇模板;
———数据。
通道是由一组互连工程对象的桩、绑定器、协议对象和截转器组成的配置。这种配置是一种在最高
处有桩对象的非循环的图,如图
2
和图
3
所示。桩对象之间贯穿此图的路径由:
———绑定器、协议对象、协议对象和绑定器按顺序组成,或由:
———绑定器、协议对象、截转器、协议对象和绑定器按顺序组成。
关于通道配置或服务质量管理的通道行为受桩、绑定器、协议对象和截转器的控制界面控制。这些
控制界面是选项。
注
1
:通道中的桩、绑定器、协议对象和截转器可能会与此通道之外(例如,提供重定位或协调功能)的其他工程对
象的(本地或分布式)绑定。
注
2
:视所涉及的转换类型而定,截转器可以分解到桩、绑定器、协议对象和基本工程对象来反映这种通道结构。
通道中的对象本身可能是由通道支持的基本工程对象。
图
2
基本客户/服务器通道例子
71
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
图
3
多端点通道例子
8.2.1.1
桩
通过通道交互的基本工程对象与桩是本地绑定。在通道中,桩提供由交互运载的数据的转换。桩
可应用控制和保存记录(例如,对安全和计帐)。如果要求的话,桩能够与此通道之外的工程对象交互
(例如,安全功能)。通道中的桩有一个供其支持的工程对象使用的界面和与绑定器交互的界面。它还
可能有控制界面。
当互连的桩使用不同的传送语法时,必须在它们之间的路径上有一个截转器,以便将数据从一种语
法转换到另一种语法。
桩可以是下列形式之一:
a
)
与其绑定的基本工程对象界面实例专有的;
b
)
与其绑定的基本工程对象界面的界面类型专有的(因此,桩可以在若干同类型的通道之间共
享);
c
)
一般的(即对任何单个界面类型不是专有的);这样的桩可在若干不同类型的通道之间共享。
注
1
:在
a
)中,工程对象和桩之间仅运送交互数据(例如,调用情况中的操作名称和参数)。此桩担任被绑定到通道
的其他基本工程对象的本地代理。
注
2
:在
b
)中,交互必须另外包括要使用的信道标识符。
81
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
注
3
:在
c
)中,交互必须另外包括要使用的信道标识符和类型,能使此桩保证交互数据与通道类型兼容。
8.2.1.2
绑定器
通道中的绑定器管理通道端到端的完整性。当要求时,绑定器通过监视通信失效和修理断开的分
布式绑定提供重定位透明性。通道中的绑定器能与此通道外的工程对象交互,以获得执行其功能所必
需的附加数据(例如,获得位置数据的重定位器)。通道中的绑定器至少有一个与桩交互的界面和一个
或几个与协议对象交互的界面。绑定器可具有控制界面。如果存在,控制界面能改变通道配置和通道
删除。
8.2.1.3
协议对象
协议对象提供通信功能。协议对象能与信道之外的工程对象(例如,目录功能)交付,以获得它们需
要的信息。协议对象具有与绑定器交互的界面和至少有一个与其他协议对象交互的界面(如果要求,通
过截转器)。协议对象可以具有控制界面。当通道中的协议对象是不同类型时,它们要求一个提供协议
转换的截转器。通信域中的所有协议对象能够直接使用通信域中的设施进行通信(这些不属于参考模
型的范围)。
在任一给定时间位置,协议对象由其空间位置标识,但是,在不同的时间,不同的协议对象能占据同
一空间位置(即,网络地址能够反覆循环)。当通道中的协议对象是同一类型,但处于分离的通信域时,
命名矛盾是可能的(例如,通信界面的名称可能是二义性的)。在此情况中,要求截转器在建立和维护通
道完整性的过程中转换所交换的名称。
8.2.1.4
截转器
通道中的
<X>
截转器位于
<X>
域之间的边界处,并提供对跨越
<X>
域边界的交互的检测和转
换。视跨越的边界而定,截转器要求不同的信息以执行其任务。某些截转器需要知道与截转器所位于
的通道绑定的基本工程对象界面的告示类型,以致它们能够解释此通道所支持的交互。截转器至少有
二个通信界面。它可能有控制界面。
8.2.2
界面引用规则
对分布式绑定的用途而言,通过工程界面引用确定工程界面的空间和时间位置。工程界面引用是
针对工程界面引用管理域定义的。此域对该域中工程界面引用的内容、定位、跟踪和确认来确定策略。
工程界面引用管理域由一组结点组成。如果工程界面引用域的工程界面引用管理策略不矛盾,那么这
些域可以结成联盟。
工程界面引用包含能与工程对象界面建立绑定的信息。此信息使核对象能创建通道,还使通道中
的绑定器能维护互连工程对象之间的分布式绑定。工程界面引用中的信息可采用下列形式:
———数据;
———访问此数据的界面的标识符;
———数据和标识符的组合。
绑定必需的数据包括下列任一项或全部:
———被引用界面的界面类型;
———配置通道以支持分布式绑定时,能被选用的描述截转器、协议对象、绑定器和桩的通道模板;
———能启动绑定过程的通信界面的空间和时间位置(例如,网络地址);
———能删除和修理由于工程对象重定位而无效的分布式绑定的信息。
界面引用管理域可以分成子域。在此情况下,此域中的界面引用可组成一套可替换信息组,每个能
使绑定的子域有一个信息组。
注
1
:如果支持工程界面的核支持不同的协议、绑定过程和传送语法,工程界面引用将指明能够选用于特定分布式
绑定的有效组合;不同的绑定可作不同的选择。
注
2
:本参考模型不规定从工程界面引用导出的有关界面的通道模板和空间、时间位置的方法。
工程界面引用由核分配在支持结点管理功能的界面处(见
12.1.3
)。工程界面引用由工程界面引
91
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
用跟踪功能(见
13.9
)跟踪以便检测到不再被引用的工程对象。重定位功能(见
14.3
)记录重绑定已被
重定位的工程对象界面的策略和用于已被重定位的工程界面的更新工程界面引用。这三种功能(结点
管理、工程界面引跟踪和重定位)可以通过使用共享的信息组织功能(见
14.2
)加以协调。
工程界面引用在工程界面引用管理域上下文中是无二义性的。为了获得这种无二义性,工程界面
引用管理域中的结点用一种协调的方法配置工程界面引用。工程界面必须按使工程界面引用避免引用
错误的界面的方式予以分配,甚至存在失效和重定位时也以这种方式分配。在最坏情况下,界面引用将
会引用到不存在的界面(例如,紧接在支持此界面的工程对象失效之后)。
注
3
:在大部分界面不改变位置的
ODP
系统中,界面引用的管理可被最佳化;核能够自主地分配工程界面引用;与
界面相关联的通道类型和通信界面能予以存储并可在工程界面引用中发送。重定位功能可用来确认和更新
已被重定位的界面用的工程界面引用。
发布工程界面引用之前,核构建通道模板。此模板定义适合支持此界面中的交互的桩、绑定器和协
议对象的配置。此外,核建立有效的本地结构,可用与此界面绑定成为可能,以及使模板和本地结构与
通信界面相联系。工程界面引用使此信息成为可用。
位于工程界面引用管理域之间边界处的截转器维护这些域的工程界面引用之间的映射。当工程界
面引用或包含工程界面引用的对象簇模板跨越工程界面引用域边界时,所涉及的工程界面引用必须予
以转换以致在新域中有效。
仅当有一个已定义的避免二义性映射引用的规程时,工程界面引用从一个界面引用管理域到另一
个域的媒体交换才是可能的。
8.2.3
分布式绑定规则
建立一条通道要求创建合适的桩、绑定器、协议对象和截转器。通道建立能由任一工程对象启动。
它由每个核,以其结点管理界面中的一项功能来提供。分布式绑定涉及待绑定界面所位于的结点中的
核的交互。通道建立由通道模板和一组界面引用加以参数化。对通道模板中的每个特定角色分配一个
界面引用。通道模板必须与用于待绑定界面的工程界面引用指定的通道类型相兼容。核为待绑定的每
个对象在其结点处创建桩、绑定器和协议对象配置以支持被绑定那个对象的界面。这包括它们的控制
界面配置。支持此通道的协议对象在其通信界面处连接(可能经由截转器)。桩、绑定器、协议对象和截
转器的选择和配置由通道模板和所涉及界面引用的通道类型确定。对通道具有的每个界面,由通道绑
定的每个基本工程对象分配到一个绑定端点标识符。基本工程对象使用绑定端点标识符,以指定在哪
些界面处将要产生分布式交互。
注
1
:通道能由任一工程对象建立,与此对象是否有要由此通道绑定的界面无关。
注
2
:启动分布式绑定的基本工程对象要求一组界面引用。这些可用下列任一方法获得:
a
)
按照此对象的启动;
b
)
通过启动对象和核之间的交互,作为启动对象界面的例示的一部分;
c
)
通过某个与其他有关对象的交互链(例如通过参数传递或交易)。
注
3
:通道模板可以包含在所选情况中适用的替代配置。例如,如果通信路径不安全,可以要求加密桩。
8.2.4
重定位规则
由于下列原因,工程对象可以重定位:
———重激活和去激活;
———设检测点和恢复;
———迁移;
———通信域管理功能(例如,改变通信界面标识符)。
注
1
:由于改变结点的网络地址,通信界面可有它的已改变的标识符。
注
2
:当重新建立通道时,可以使用与重定位之前不同的桩、绑定器和协议对象。因此,通信界面标识符对识别工
程对象界面未必是充分的。
02
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
重定位可能引起通道失败并且可能使工程界面引用无效。如果改变工程对象界面的活动适时通知
定位功能(见
14.3
),失效的通道能被修复。
通道中的绑定器检测重定位何时已使通道无效。绑定器合作校正工程界面引用和通道结构之间的
映射(即要求重定位透明性———见
16.6
),或排除通道失效。当要求重定位透明性时,通过工程界面引
用得到的信息使绑定器能使用重定位功能确定所涉及基本工程对象的新位置。
8.2.5
对象簇规则
对象簇包含一组与对象簇管理器相关联的基本工程对象。对象簇中的每一成员能有一个支持对象
管理功能的界面。每一个这样的对象管理界面与对象簇的对象簇管理器绑定。对象簇中的基本工程对
象总是与其核绑定,在提供结点管理功能的界面处,并且与其对象簇管理器绑定。此外,对象簇中的基
本工程对象能与同一对象簇或其他对象簇中的其他基本工程对象绑定。对象包中的每个对象簇管理器
与此对象包的对象包管理器绑定。此结构示于图
4
。
图
4
支持基本工程对象的结构例子
对象簇总是包含在单个对象包中。对象簇负责其自身的安全,但是可由安全功能指派。任何一项
分派安全功能必须由与对象簇同样的对象包中的对象提供,或由安全交互访问(如果它在对象包之外)。
同一对象簇中的工程对象可以使用此对象簇中的本地绑定或使用由通道所支持的分布式绑定进行交
互。不同对象簇中的工程对象使用通道支持的分布式绑定进行交互。
注
1
:不排除感知或交换引用点处的交互。
注
2
:虽然不需要通道支持同一对象簇中对象间的本地绑定,但用来执行调用的标识符与不同对象簇中工程对象
间使用的类型相同,并仍称为绑定端点标识符。
由对象包管理器执行对象簇例示(包括特定情况的克隆)。
如果此模板是对象簇检测点,此例示(即克隆)使新的对象簇能作为原发对象簇(曾导出此对象簇模
板的对象簇)的替代物。当由于分布透明性原因而要求时,克隆过程包括重新建立曾由原发对象簇保持
的分布式绑定。
对象簇有一个相关联的对象簇管理器。对象簇管理器提供对象簇管理功能。对象簇管理器包含对
其对象簇中工程对象的管理策略。对象簇管理策略可以使对象簇与其他
ODP
功能交互,以完成对象簇
管理活动。
12
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
对象簇管理器协助其对象包管理器管理对象的工程界面引用。这可以要求访问工程界面引用跟踪
功能。
8.2.6
对象包规则
对象包由下列部分组成:
———对象簇;
———对象簇管理器,对象包中每个对象簇有一个;
———对象包管理器与对象包中的每个对象簇管理器绑定。
对一条通道中与对象包中的对象簇内的基本工程对象界面绑定的桩、绑定器和协议对象可能包含
在此对象包中。对象簇中的所有基本对象与同一结点管理界面绑定。其他对象包中的工程对象与不同
的结点管理界面绑定。对象包包含在结点中。对象包有一个对象包管理器。在提供对象簇管理功能的
界面处,对象包管理器与对象包中的每个对象簇管理绑定。此结构示于图
5
(此图没有画出核的细节)。
图
5
对象包结构例子
通过核使用对象包模板执行对象包例示,该对象包模板规定对象包中工程对象,包括对象簇、对象
簇管理器、桩、绑定器、协议和对象包管理器的初始配置。
对象包是绑定端点标识符的命名上下文。本参考模型不要求这些标识符在一个更大的上下文中有
效。工程界面引用用来传播对象包之间工程对象界面的知识(对绑定用途而言)。
对象包管理器包括用于对象包中的对象簇的管理策略。对象包管理策略可以使对象包管理器与其
他功能交互,以完成对象包管理活动。对象包管理器有一个提供对象包管理功能的界面,支持结点内对
象包管理器核之间交互的结构是不属于本参考模型范围,而是实现细节的事。
8.2.7
结点规则
结点由一个核和一组对象包组成。结点中的所有工程对象共享公共的处理、存储和通信功能。
结点是一个或多个工程界面引用管理域中的成员。
核提供一组结点管理界面,结点中每一个对象包有一个。
结点结构示于图
6
。
22
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
图
6
结点结构例子
对结点例示的规程不属于本参考模型范围;它必然导致:
———结点的核及其相关联的处理、存储和通信功能的引入,包括引入结点管理功能,以使工程界面
引用能分布式绑定;
———引入例示处理所需的交易功能;
———作为结点初始配置一部分所要求的通道的例示(例如:支持诸如重定位器这样的工程对象)。
在结点例示期间引入的一组协议对象确定结点所属的一组初始通信域。核提供结点管理功能,并
包括结点管理策略。此策略可能导致核与其
ODP
功能的交互而完成结点管理活动。对象包是结点管
理策略应用的基本单元;虽然单个对象可能使用结点管理功能,但它受可应用于其对象包的策略的支
配。不同的对象包可能经受不同的结点管理策略的支配。
8.2.8
应用管理规则
若干协调的对象簇的生命周期(创建、迁移、去激活、重激活、设检测点、失效、恢复和删除)的管理由
特定应用管理策略驱动。应用管理策略可应用于各个对象簇或若干协调的对象簇组。一组被管理的对
象簇构成应用管理域。应用管理策略能由特定应用管理功能加以实现。这些特定应用管理功能影响使
用机制的改变,而这些机制是通过本参考模型中定义的协调和管理功能(例如对象簇管理功能)提供的。
适用(即,视分布透明性适用而定)时,特定应用管理功能能接收影响它们管理的对象簇的重要事件
的通知,并采取动作响应这些通知。例如,绑定失效报告能导致对象簇的重激活,或过负荷报告能导致
对象簇的迁移。与应用管理域中某个对象簇相关的请求和通知能导致特定应用管理功能对此域中的其
他对象簇启动生命动作。
应用域管理的细节不属于本参考模型范围。
8.2.9
失效规则
失效可按涉及的对象簇、对象包、结点或通信域分类。失效分析是以下列事实为基础的;
———由其对象簇管理器检测到的限于对象簇的失效;
———由其对象包管理器检测到的限于对象包的失效;
———由与其互连的其他结点处的协议对象检测到的结点失效;
———由与其互连的其他通信域中的协议对象检测到的通信域失效。
注:在通信系统中存在一种固有的二义性,它可以避免协议对象在通信失效和远程结点失效之间作出区分。
8.3
一致性和引用点
在对象簇管理器和基本工程对象之间的交互点处有一个编程的引用点。
在工程对象和核之间的交互点处有一个编程引用点。
在基本工程对象之间的交互点处有一个编程引用点。
在基本工程对象的界面处可有一个感知或交换引用点。
若基本工程对象的交互由通道提供,那么,对每个所涉及的基本工程对象,在这些对象和此通道中
32
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
相应的桩之间的交互点处有一个编程引用点。
在由一条通道组成的对象配置中,在此通道中的每个下列交互点处有一个编程引用点:
———桩之间(除去桩之间此通道中的绑定器、协议对象和截转器);
———桩和绑定器之间;
———绑定器之间(除去绑定器之间此通道中的协议对象和截转器);
———绑定器和协议对象之间;
———同一结点中协议对象和其他协议对象之间(如果有,除去协议对象之间的截转器)。
以及在协议对象和其他对象或不同结点中的截转器之间的交互点处有一个互工作引用点。
桩、绑定器、协议对象和截转器的控制界面是编程引用点。
如果通道中的工程对象,经由不在此通道的界面与其他工程对象(不管是否在此通道)交互,那么,
适用于这些界面的引用点由这些规则的递归应用确定。
通过定义互工作引用点处的一致性,系统互工作成为可能。
通过定义编程引用点处的一致性,系统之间工程对象的可移植性成为可能。
在编程引用点各个工程对象的一致性本身不能保证这些工程对象将可移植到所有系统或将与其他
核绑定的匹配的工程对象互工作。
9
技术语言
技术规范定义
ODP
系统的技术选择。
9.1
概念
技术语言包含
GB
/
T18714.2
—
2002
的概念和遵从
9.2
规则定义的下列概念。
9.1.1
可实现标准:技术对象用的模板。
9.1.2
实现:其有效性能被测试的例示过程。
9.1.3IXIT
:测试用的实现附加信息。
9.2
构建规则
技术规范根据下列内容定义
ODP
系统技术选择:
———技术对象的配置;和
———这些对象之间的交互。
技术规范:
———表示
ODP
系统规范如何被实现;
———标识与
ODP
系统结构有关的技术规范;
———提供这些规范的分类;
———规定实现者所要求的支持测试的信息。
当适用按另一观点语言书写一个规范时,技术规范的结构要给出此另一观点规范的原子术语的
说明。
ODP
功能技术规范能引用其他
ODP
功能的规范。
技术规范由技术对象是已命名可实现标准的实例的说明组成。
技术规范通过列出所要求的模板组和所有必要引用点的描述性名称给出一致性
IXIT
的形式。
通过引用其他规范引入所有可实现标准。技术语言不定义限制技术对象行为或用于构建可实现标
准的其他规则。
9.3
一致性和引用点
技术语言用来断言技术对象是可实现标准的实例;一般,这些标准包含一致性声明。
10
相容性规则
用不同观点语言写成的一组
ODP
系统规范不应产生相互矛盾的说明(见
4.2.2
),即它们应相互一
42
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
致。因此,系统的完整规范包括术语之间对应的说明和有关一种观点规范到另一种观点规范的语言结
构,以表明满足相容性要求。
ODP
系统一组规范中的相容性的最低要求是它们应该显示本参考模型中
定义的对应和一组规范中自己定义的对应。本参考模型不表明每对观点语言之间一般对应。本条款限
于计算规范和信息规范之间和计算规范和工程规范之间的对应规范。在每种情况下,对应表示成链接
一种观点语言中的术语与另一种观点语言中的术语关系的解释。一般,以本参考模型为基础的一组规
范需要与所有观点规范相关。
相容性的关键是规范之间对应观念,即一个规范中的某些术语或结构的说明与另一个规范中的其
他术语和规范相对应。在用一种语言表示的二个不同规范之间或在用二种不同语言表示的二个不同规
范之间建立对应。二种语言之间对应的说明意味着用这些语言表示的任一对规范之间的等价对应。
相容性的分析取决于特定的一致性技术的应用。大部分技术是建立在对特定的不相容性类检查的
基础上,因此,不能表明是绝对的相容性。相容性的一种形式涉及控制一种语言到另一种语言的转换的
一组对应性规则。因此,假设:用观点语言
L1
表示的规范
S1
和用观点语言
L2
表示的规范
S2
,其中
S1
和
S2
两者规定同一系统,例如,为了对假设等价对象或对象配置之间的行为兼容性进行检验,可将转换
T
应用到
S1
,由此产生用可直接与
S2
比较的观点语言
L2
表示的一个新规范
T
(
S1
)。
10.1
计算和信息规范对应
本参考模型不规定信息对象和计算对象之间准确的对应。特别是,计算规范的所有状态不必与信
息规范的状态相对应。可以在几部分计算行为中存在过渡计算状态(抽象为信息规范中的原子过渡)。
一信息对象对应于一组计算对象时,信息对象的静态和不变模式对应于计算对象的可能状态。信
息对象状态中的每个变化对应于计算对象之间某组交互或计算对象的内部动作。信息对象的不变和动
态模式对应于计算对象的行为和环境合约。
注:如果在信息规范中使用信息界面的概念,则不必在信息界面和计算界面之间存在对应。
10.2
工程和计算规范对应
不是绑定对象的每个计算对象对应于一组或多组基本工程对象(以及连接它们的通道)。此组中的
所有基本工程对象仅对应于此计算对象。
除涉及复制对象的透明性之外,每个计算界面准确地对应于一个工程界面,并且此工程界面只对应
于此计算界面。
注
1
:工程界面由基本工程对象之一支持,这些基本工程对象对应于支持计算界面的计算对象。
当涉及复制对象的透明性时,被复制对象的每个计算界面对应于一组工程界面,每个由复制导致的
基本工程对象对应一个界面。这些工程界面每个只对应原发的计算界面。
每个计算界面由一组计算界面标识符的任一个成员加以标识。每个工程界面由一组工程界面标识
符的任一成员加以标识。因此,由于计算界面对应于工程界面,则计算界面的标识符能用对应组的一个
工程界面引用无二义性地予以表示。
每个计算绑定(与绑定对象有关的原始绑定或复合绑定)对应于工程本地绑定或工程通道。工程本
地绑定或通道仅对应于此计算绑定。如果计算绑定支持操作,则工程本地绑定或通道至少必须支持下
列内容的交换:
———计算告示名称:
———计算操作名称;
———计算终止名称;
———调用和终止参数(包括计算界面标识符和计算界面告示)。
除涉及复制对象的透明性之外,每个计算绑定对象控制界面有一个对应的工程界面,并存在一条工
程交互链。此链在计算绑定的支持下,将此工程界面与要控制的桩、绑定器、协议对象或截转器进行
链接。
注
2
:所涉及的控制界面组与绑定对象的类型有关。
52
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
每个计算交互对应于某条工程交互链,它以某一个交互开始和结束,该交互涉及与交互的计算对象
相对应的一个或几个基本工程对象。
每个计算信号对应于工程本地绑定处的交互或一条工程交互链,它提供必要的一致的计算交互
观点。
第
16
章的透明性陈述规定了附加的相应内容。
注
3
:与不同的计算对象相对应的基本工程对象可能是同一个对象簇的成员。
注
4
:在完全以对象为基础的计算语言中,数据表示成抽象的数据类型(即,界面对计算对象)。
注
5
:计算界面参数(包括用于抽象数据类型的参数)能够通过引用传递,这些参数对应于工程界面引用。
注
6
:计算界面参数(包括用于抽象数据类型的参数)能够通过迁移或复制支持此界面的对象传递。在迁移情况
下,这些参数对应于对象簇模板。
注
7
:如果支持界面参数的计算对象的抽象状态是不变的,则克隆而不是迁移此对象。
注
8
:对象簇模板能表示成抽象数据类型,因此,计算参数和工程界面引用之间的直接对应是充分的。使用对象簇
或数据是重要的工程优化,因此不予排除。
11ODP
功能
本部分定义的功能对
ODP
系统的构造是基本的或广泛适用的功能。
各个
ODP
功能规范可以组合而形成
ODP
系统组成部分的规范。这些组成部分的标识是标准化过
程的事,而不由本参考模型规定:它包含用
GB
/
T18714.2
—
2002
的概念写成的轮廓功能描述。
本参考模型中的某些功能描述引入对象是为简化建模结构。除对这些对象的分布给出明显的限制
以外,它们不定义实现中的必要结构。
本参考模型定义的功能列表如下。构成计算语言整体部分的功能用“
”标记,构成工程语言整体
部分的功能用“
+
”标记:
a
)
管理功能:
1
)
结点管理功能
+
;
2
)
对象管理功能
+
;
3
)
对象簇管理功能
+
;
4
)
对象包管理功能
+
。
b
)
协调功能:
1
)
事件通知功能;
2
)
设检测点和恢复功能;
3
)
去激活和重激活功能;
4
)
组功能;
5
)
复制功能;
6
)
迁移功能;
7
)
工程界面引用跟踪功能
+
;
8
)
事务功能。
c
)
仓库功能:
1
)
存储功能;
2
)
信息组织功能;
3
)
重定位功能;
4
)
类型仓库功能;
5
)
交易功能
+
。
d
)
安全功能:
62
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
1
)
访问控制功能;
2
)
安全审计功能;
3
)
鉴别功能;
4
)
完整性功能;
5
)
机密性功能;
6
)
抗抵赖功能;
7
)
密钥管理功能。
12
管理功能
12.1
结点管理功能
结点管理功能控制结点内的处理、存储和通信功能。
结点管理功能由一个或几个结点管理界面处的每个核提供。
每个对象包使用的结点管理界面与同一结点中其他对象包使用的结点管理界面是不同的。
结点管理功能:
———管理线程;
———访问时钟和管理定时器;
———创建通道和定位界面。
在本参考模型定义的体系结构中,结点管理功能由所有其他功能使用。
12.1.1
线程管理
结点管理界面提供在对象包内衍生和分叉线程以及在对象包内联合、延迟和同步化线程的功能。
12.1.2
时钟访问和定时器管理
结点管理界面提供确定在规定的时钟管理域内的当前时间,以及启动、监视和取消定时器的功能。
12.1.3
通道创建和界面位置
结点管理界面提供的功能:
a
)
使对象包内的一个工程对象和交易功能的实例之间能绑定;
b
)
为其他对象包内的对象绑定获得工程界面;
c
)
建立对象包内一个工程对象和一组其他工程对象之间的绑定(由工程界面引用标识);
d
)
根据规定的工程界面引用,确定通道类型和它隐含的通信界面。
注
1
:在
8.2.3
解释交互
b
)和
c
)的使用。
注
2
:交互
d
)表达界面引用的信息内容,因而,使它能存储或转换它以用于不同的界面引用管理域。
为其他对象包内的对象绑定获得界面———上述交互
b
)———由下列动作组成:
———在一指定的工程界面引用管理域内确定工程界面引用;
———分配能够建立与此界面绑定的通信界面;
———分配到此界面的通道类型。
12.1.4
对象包模板例示和对象包删除
结点管理界面提供例示出对象包模板和删除对象包的功能。
对象包模板例示由下列步骤组成:
———为与提供结点管理界面的核相同的结点中的新对象包分配处理、存储和通信功能;
———为新对象包创建对象包管理器;
———在新的对象包管理器中创建对象包管理界面;
———为对象包管理界面产生标识符;
———为核中新的对象包创建对象包控制界面;
———为对象包控制界面产生标识符。
72
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
由对象包模板例示产生的对象包控制界面能删除此对象包(例如,当其管理器失效时)。
对象包的删除应删除此对象包中所有的对象。
12.2
对象管理功能
对象管理功能对对象设检测点和删除对象。
当对象属于能被去激活、被设检测点或被迁移的对象簇时,此对象必须有一个提供一个或几个下列
功能的对象管理界面:
———设对象的检测点;
———删除对象。
注
1
:不同的对象管理界面能有不同的界面类型,这取决于它们支持的功能。
注
2
:设对象的检测点产生适于加入对象簇检测点的信息。
注
3
:当一个对象被删除时,支持与此对象绑定的桩、绑定器、协议对象和截转器可能被删除。
对象簇管理功能使用对象管理功能。
12.3
对象簇管理功能
对象簇管理功能设检测点、恢复、迁移、去激活或删除对象簇,并由对象簇管理界面处的每个对象簇
管理器提供。此功能由与被管理的对象簇有关的下列一个或几个功能组成:
———修改对象簇管理策略(例如,其对象簇检测点位置、将重定位功能用于对象簇的触发器重激活
或恢复);
———去激活对象簇;
———设此对象簇的检测点;
———用一个对象簇检测点所例示的新对象簇代替此对象簇(即,删除之后恢复);
———将此对象簇迁移到另一个对象包(使用迁移功能);
———删除对象簇。
注:不同的对象簇管理界面可有不同的界面类型,这取决于它们支持的功能。
对象簇管理器的行为受此对象簇的管理策略限制。对象簇设检测点和去激活仅在此对象簇中的所
有对象具有支持此对象设检测点功能的对象管理界面才是可能的。去激活和对象簇删除两者都要求此
对象簇中的对象支持对象删除。
在由本参考模型定义的体系结构中:
———对象簇管理功能由对象包管理功能、去激活和重激活功能、检测点和恢复功能、迁移功能和工
程界面引用管理功能使用;
———对象簇管理功能使用存储功能保持检测点。
12.3.1
对象簇检测点
对象簇检测点包含重新建立对象簇所需的信息,并包括下列要素:
a
)
对象簇中对象的检测点;
b
)
对象簇中对象的配置;
c
)
重建涉及对象簇中对象分布式绑定的充分信息。
注:工程界面引用是建立绑定所要求的基本信息部分。对象簇检测点将包含由上述
a
)和
b
)而产生的所有工程界
面引用。
12.3.2
对象簇删除、去激活和失效
对象簇删除能删除对象簇中的所有对象、对象簇管理器和只支持此对象簇或其对象簇管理器的对
象(例如,桩和绑定器)。对象簇去激活由去激活和重激活功能配合进行;这产生对象簇的检测点,之后
删除对象簇及其支持结构。对象簇失效是由于对象簇中所有对象的删除,在某些情况,会导致删除对象
簇支持结构。
12.3.3
对象簇重激活和恢复
82
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
已去激活的对象簇能从其检测点之一重激活。对象簇重激活当然是对象包的管理功能,因为对象
簇管理器作为对象簇去激活的一部分而被删除了。对象簇能从检测点之一恢复。如果有关的对象簇管
理器未被删除,它能启动恢复;否则,恢复是指对象包管理功能并包括新对象簇管理器的创建。
12.3.4
对象簇迁移
对象簇迁移由在目标对象包中的克隆源对象簇组成,接着是删除源对象簇。这由迁移功能协调,并
通过目标对象包的对象包管理界面,对迁移的对象簇参数化。
12.4
对象包管理功能
对象包管理功能例示出对象簇(包括恢复和重激活)、设对象包中所有对象簇的检测点、对象包中所
有对象簇的去激活和删除对象包。此功能由对象包管理界面处的每个对象包管理器提供并由与被管理
的对象包有关的下列一个或几个功能组成:
———对象簇模板的例示(在对象包内);
注
1
:这包括重激活和恢复。
———通过去激活对象包中的所有对象簇(使用对象簇管理功能),去激活对象包;
———通过设对象包中所有对象簇的检测点(使用对象簇管理功能),设对象包的检测点;
———删除对象包,通过删除其内的所有对象簇,之后删除对象包的对象包管理器。
注
2
:因此,不同的对象包管理界面可能有不同的类型,这取决于它们支持的功能。
对象包管理器的行为受此对象包的管理策略限制。
在由本参考模型定义的体系结构中,对象包管理功能由去激活和重激活功能、检测点和恢复功能和
迁移功能使用。
12.4.1
对象簇模板例示
对象簇模板例示由对象簇模板参数化,并由下列步骤组成:
———从对象簇模板例示对象簇;
———为新的对象簇引入对象簇管理器;
———为新对象簇管理器中的对象簇管理界面产生标识符;
———按照工程语言规则和对象簇模板中的绑定信息,将新的对象簇与其他对象绑定。
注:对象簇重激活和对象簇恢复是对象簇模板的特定情况,在此情况下,对象簇模板是对象簇检测点。
对象簇模板能包含一个域的专门信息。如果,模板要例示到另一个域,那么,此信息也必须转换。
特别是,如果在一个不同的工程界面引用管理域中例示出此对象簇,则此对象簇中包含的工程界面引用
必须转换。
12.4.2
对象包删除
对象包的删除引起对象包管理器的删除,并能导致此对象包或其管理器中被支持对象的桩、绑定
器、协议对象或截转器的删除。
13
协调功能
13.1
事件通知功能
事件通知功能记录和产生可用的事件历史。
13.1.1
概念
13.1.1.1
事件历史:对象表示的重要活动。
13.1.2
规则
事件生产者与事件通知功能交互,以创建事件历史。事件通知功能向事件消费者对象通知事件历
史的可用性。
事件通知功能支持一种或几种事件历史类型并具有确定此功能行为的事件通知策略,特别是:
———哪些对象能创建事件历史;
92
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———向哪些对象通知新事件历史的创建;
———这些通知发生的手段;
———事件历史持久性和稳定性要求;
———与事件生产者和事件消费者对象交互之间的排序关系。
事件消费者与事件通知功能交互以登记新事件历史的通知。视事件通知策略而定,此交互能:
———建立与当前可用事件历史的绑定;
———使有关此交互之后创建的事件历史能通信。
注:使用事务和复制功能,能支持具有严格持久性和稳定性要求的事件历史。使用组功能能支持排序的和组播的
通知。
13.2
检测点和恢复功能
检测点和恢复功能协作对象簇的失效设检测点和恢复。
检测点和恢复功能含有管理下列情况的策略:
———何时要设对象簇的检测点;
———何时要恢复对象簇;
———何处的对象簇要恢复;
———何处的检测点应予以存储;
———哪个检测点被恢复。
对象簇的设检测点和恢复是遵从于与这些对象簇相关的安全策略的,特别是,检测点存储于何处和
在何处恢复检测点。
在本参考模型定义的体系结构中,检测点和恢复功能使用对象簇管理功能和对象包管理功能。
13.2.1
设检测点
设检测点是对象管理功能和对象簇管理功能的责任。对对象簇设检测点由其对象簇管理器协作:
首先,对象簇管理器使用对象管理功能获得对象簇中每个对象的检测点;从这些对象检测点中,对象簇
管理器构造对象簇检测点,然后使用存储功能使其成为持久的检测点。
视设检测点策略而定,设对象簇检测点可能导致与已定检测的对象簇参与公共活动的其他对象簇
的设检测点,但必须遵守下列一致性规则:
———初始的对象簇必须处于与设检测点之前相一致的状态;
———在联合设检测点的许多对象簇中的此对象簇检测点之间必须有一致性(例如,所有检测点反映
对象簇之间已发生的一组相同的交互);
———当设一对象簇检测点时,必须用此对象簇检测点的限制所有其他对象簇检测点。必须递归应
用此规则以获得一组紧密的能一致地设检测点的对象簇。
13.2.2
恢复
对象簇能在下列对象包中恢复:
———在先前设检测点的对象包中;或
———在另一个对象包中(例如,当产生检测点的对象包随后失效时)。
恢复对象簇是此对象簇的对象簇管理器的责任,或在没有对象簇管理器时,由对象包管理器恢复。
检测点和恢复功能与对象簇管理器或对象包管理器(当适用时)交互以例示出对象簇检测点。在恢复对
象簇之前,检测点和恢复功能必须保证已经移去此对象簇(例如,作为失效的结果)。与被恢复对象簇绑
定的对象必须能够检测到此对象簇已从检测点恢复(例如,它们又可以进行曾经使用此检测点之后发生
的交互)。
一个对象簇的恢复可能导致其他对象簇的恢复,例如,与被恢复的对象簇构成联合检测点的对
象簇。
13.3
去激活和重激活功能
03
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
去激活和重激活功能协调对象簇的去激活和重激活。它含有管理下列情况的策略:
———何时要去激活对象簇;
———何处的与去激活有关的检测点应予以存储;
———何时要重激活对象簇;
———哪个检测点要被重激活(例如最近的);
———何处的对象簇要重激活。
对象簇的去激活和重激活是遵从与这些对象簇相关的安全策略的,特别是,在本参考模型定义的体
系结构中,去激活和重激活功能使用对象管理功能、对象簇管理功能和对象包管理功能。去激活和重激
活功能由迁移功能使用。
13.3.1
去激活
去激活对象簇是对象簇管理功能,并由下列步骤组成:
———所涉及的对象簇的对象簇管理器与其对象簇中的每个对象交互以获得用来产生对象簇检测点
的检测点;
———对象簇管理器使用存储功能产生持久的对象簇检测点;
———对象簇管理器删除此对象簇(以及能删除自身)。
13.3.2
重激活
去激活和重激活功能通过使用对象包管理功能恢复对象簇以在目标对象包中例示出此对象簇的检
测点(并且包括创建此对象簇的对象簇管理器)。目标对象包可能是先前已被去激活的对象包或另一个
对象包(例如,为平衡几个结点上的基础设施负荷)。
13.4
组功能
组功能提供必须的机制以协调多方绑定中对象的交互。
13.4.1
概念
13.4.1.1
交互组:参与由组功能管理的绑定的对象子集。
13.4.2
规则
对在一个交互组中被绑定在一起的每组对象,组功能管理:
———交互:按照交互策略,决定此组中哪些成员参与哪些交互;
———整理:按照整理策略,导出一致的交互观点(包括失败的交互);
———排序:根据排序策略,保证群成员之间交互有正确次序;
———成员资格:按照成员资格策略,处理成员失效和恢复,以及增加和撤消成员。
注:链接组成员的绑定对象的行为确定如何影响交互。
13.5
复制功能
复制功能是组功能的特定情况,在此情况下,组成员在行为上是兼容的(例如,因为它们是同一对象
模板的复制物)。复制功能保证:对其他对象看来,组好象是单个对象。方法是保证所有成员参与所有
交互并且所有成员以同样的顺序参与所有交互。
复制组的成员资格策略可以允许增加或减少复制组成员数量。增加复制组的规模达到同样的效
果,好象克隆了此组的成员,然后,用单个原子动作加到此组。
为了将复制功能应用于对象簇,将组成对象簇的对象复制并配置到一组相同的对象簇中,每个这样
复制的对象簇中的相应对象形成复制组。因此,已复制的对象簇是一组已协调的复制组。
复制功能由迁移功能使用。
13.6
迁移功能
迁移功能协调对象簇从一个对象包迁移到另一个对象包。它使用对象簇管理功能和对象包管理功
能并包含管理对象簇应何时迁移和它们能位于何处的策略。
迁移两种可能的手段是:
13
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———复制;或
———在一个对象包中去激活,随后在另一个对象包中重激活。
13.6.1
复制
使用复制功能迁移对象簇包括下列一系列动作:
———将老的对象簇处理成对象簇复制组(规格
1
);
———在目的对象包中创建原发对象簇的拷贝,及对象簇管理器;
———将两个对象簇的对象构造到复制组(规格
2
);
———从对象组移去老的对象簇中的对象(留下规格
1
中的组);
———删除老的对象簇(及其管理器)。
13.6.2
去激活和重激活
通过去激活和重激活迁移对象簇由对象簇管理器协调,这种迁移由在其老的位置去激活此对象簇,
随后在其新的位置重激活此对象簇组成。
13.7
事务功能
13.7.1
概念
13.7.1.1
事务:导致一组对象状态变化与动态模式(及其限制不变模式)一致的活动。
13.7.1.2
所关心的动作:在事务中导致此事务重要状态变化的动作。
13.7.1.3
可见性:一个事务与其他事务同时访问对象状态的程度。
13.7.1.4
可恢复性:消除由失效事务导致的对象状态变化的程度。
13.7.1.5
持久性:失效可能影响预期完成事务的对象状态变化的程度。
13.7.2
规则
事务功能协调并控制一组事务以达到规定的可见性、可恢复性和持续水平。
事务功能:
———与对象交互以监视所关心动作的出现、所关心动作的影响的消除和所关心动作的起因;
———判定所关心动作是否处于矛盾;
———与对象交互以安排所关心的动作的出现来防止矛盾;
———与对象交互以消除已经发生的所关心的动作的影响,从而解决矛盾。
按照策略确定:
———哪些动作是所关心的动作;
———哪些所关心的动作是矛盾的;
———要消除哪些所关心的动作以解决矛盾。
13.8ACID
事务功能
ACID
事务功能是总的事务功能的特定情况,在此功能中:
———可见性规定为事务相互隔离;
———可恢复性规定为事务是原子的要求;
———持久性规定为由事务引起的状态变化是可持久的要求(即稳定的);以及
———通过正确执行具有原子性、隔离和持久性特征的事务达到符合有关动态和不变模式的一致性。
对
ACID
事务功能,所关心的活动是:
———起动事务;
———提交事务;
———放弃事务;
———访问状态;
———修改状态;
———取消上述任一个。
23
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
事务策略表示成事务连续性规则。
13.9
工程界面引用跟踪功能
工程界面引用跟踪功能监视不同对象簇中工程对象之间工程界面引用的传送,以确定何时不再要
求与工程界面有关的基础设施(即,另一个对象簇中没有一个对象处于与所引用的界面绑定的状态)。
在其范围内,工程界面引用跟踪功能维护:
———占有工程界面引用的信息;
———存在界面的信息。
工程界面引用跟踪功能:
———由桩通知何时在对象簇之间传送工程界面引用;
———由对象簇管理器通知何时删除其对象簇中工程界面引用的所有拷贝;
———检测何时在支持工程界面引用的对象簇之外不保持工程界面引用的拷贝并通知相应的对象簇
管理器;
———把已失效或已被删除的界面的对象簇有工程界面引用的持有者通知管理器。
注:使用事件通知功能可以得到工程界面引用跟踪事件的通知。
工程界面引用管理功能受其应用的工程界面引用管理域的工程界面引用管理策略制约。
14
仓库功能
14.1
存储功能
存储功能存储数据。
14.1.1
概念
14.1.1.1
数据仓库:提供存储功能的对象。
14.1.1.2
存储器界面:允许访问数据的数据仓库界面。
14.1.2
规则
数据仓库存储数据组。当存储数据时,每组数据与创建的存储器界面相关联。存储器界面提供下
列功能:
———获得通过此界面存储的数据的拷贝;
———修改与此界面相关的数据;
———删除此存储器界面及其有关的数据。
注:对象包含动作和状态(即处理和数据);本质上它们是持久的。检测点和恢复功能或复制功能可用于存储功能
的基础设施中以提供稳定性。对对象簇检测点,这些功能可以将存储功能的其他实例用作仓库。
14.2
信息组织功能
信息组织功能管理信息模式所述的信息仓库,并包括部分或全部下列要素:
———修改和更新信息模式;
———使用查询语言查询仓库;
———修改和更新仓库。
查询以及对查询的响应的形式和性质取决于查询语言。信息组织功能不允许对信息仓库作出与其
模式不一致的修改或更新。
信息组织功能建造成(具有通信界面的)对象仓库,其状态与
ODP
系统中的实体和关系相一致。这
些对象支持下列操作:
———定义此仓库中对象的属性、特性和关系;
———增加和删除此仓库中的对象;
———断言和删除此仓库中所选定的对象的属性、特性的关系;
———选择满足按属性、特性和关系规定的谓词(即类型)的对象。
33
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
注
1
:信息组织功能可以导出直接例示出对象的附加关系。
注
2
:信息组织功能可用来维护对象簇和其检测点之间的关系(即能够创建或访问检测点的存储界面)。
注
3
:为提供恢复以响应与失效对象簇的交互,信息组织功能能用来维护对象簇和能够请求恢复此对象簇的界面之
间的关系。
注
4
:为提供重激活以响应与去激活的对象簇的交互,信息组织功能能用来维护去激活的对象簇和能请求重激活此
对象簇的界面之间的关系。
注
5
:为证实或更新界面引用,重定位器所需的信息可由信息组织功能维护。
14.3
重定位功能
重定位功能管理界面位置仓库,包括支持这些界面的对象簇用的管理功能位置。
14.3.1
概念
14.3.1.1
重定位器:提供重定位功能的对象。
14.3.2
规则
重定位器有界面位置目录,由于通信域管理(例如,改变结点网络地址)或由于对象簇管理活动(诸
如,对象簇检测点的去激活、迁移、复制或恢复),这些界面已具有它们的已改变的位置。
界面可以与重定位器相关联;重定位器可以是一个界面专用的或是几个界面公用的。当重定位器
的范围跨越一个以上的工程界面引用管理域时,访问重定位器的手段必须要清除它所用的界面引用管
理域。
当重定位器与界面相关联时,改变界面位置的活动必须通知新位置的重定位器,特别是当对象簇被
重定位时,对象簇管理器必须通知此对象簇中的每个对象的每个界面的重定位器。只需记录已有其改
变后位置的对象的界面。当工程界面引用要保持有效事件而支持它的对象处于去激活的或失效的但以
前设检测点的对象簇中时,重定位器必须包含使用协调功能的策略,在另一个对象企图确认此引用时,
通过重激活或恢复(按适用)以复原此对象簇。
重定位器支持下列交互:
———记录工程界面引用所标识的界面位置的改变;
———确认工程界面引用所标识的界面位置(如果需要,包括包含支持此界面对象的对象簇复原);
———在确认工程界面引用所标识的界面位置时,建立与协调功能(例如,去激活和重激活功能)交互
的策略。
注:执行工程界面引用确认对象可以保留此确认的结果以优化此引用的进一步使用。
14.4
类型仓库功能
类型仓库功能管理类型规范和类型关系的仓库。它对其存储的每个类型规范有一个界面。
14.4.1
规则
能向类型仓库功能通知除它能从类型规范的比较中导出的那些关系以外的类型关系。类型规范不
允许建立不一致的关系。
类型规范是不可改变的。
类型仓库功能包括创建类型及其有关的类型界面。
特定类型的类型仓库界面提供下列功能:
———查询类型规范;
———断言此类型和其他类型之间的关系;
———查询此类型和其他类型之间的关系。
注:计算告示类型的子类型划分关系由
7.2.4
中的告示子类型划分规则定义。对允许计算告示子类型关系的类型
仓库没有要求。当类型仓库包括告示类型时,不允许此仓库施加附加的告示类型划分规则或与
7.2.4
规定相
矛盾的断言。
14.5
交易功能
交易功能传递界面的广告和发现。
43
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
14.5.1
概念
14.5.1.1
服务提供:关于界面、包括此界面标识符及其计算界面告示类型的信息。
注
1
:标识符允许与此界面的绑定。
注
2
:计算告示能使交易方保证服务输入选择将以输入对象所希望的方式交互的服务提供。
注
3
:服务提供中的附加信息可用来提供比界面告示中所包含的识别力更强的识别力。
14.5.1.2
服务输出:一种通过将服务提供加到一组已标识的服务提供来宣传此服务提供的、与交易功
能的交互。
14.5.1.3
服务输入:一种搜索一组已标识的服务提供,以发现可以获得满足规定类型服务的界面的、
与交易功能的交互。
14.5.2
规则
交易功能提供服务输入和服务输出,其行为受交易策略支配。此策略表明服务输出中所标识的集
合和服务输入中所标识的集合同有什么样的关系。在服务输入方面,交易功能必须选择满足交易功能
自身策略服务提供输出者策略和服务提供输入者策略的最适合的提供。服务输入包括计算界面告示子
类型/超类型检测。此外,它能包括进一步的检测水平,包括行为能力和环境限制方面的检测。
15
安全功能
15.1
概念
下列概念对所有安全功能是公用的。
15.1.1
安全策略:制约一组或几组对象的一组或几组活动的一组规则。
15.1.2
安全管理机构:负责安全策略实现的管理部门。
15.1.3
安全域:使成员负有义务遵守安全管理机构建立和管理的安全策略的域。
注:安全管理机构是安全域的控制对象。
15.1.4
安全交互策略:不同安全域的安全策略中为了使在这些域之间发生交互所必需的安全策略。
15.2
访问控制功能
访问控制功能防止与一个对象未授权的交互。它包括访问控制判定功能和访问控制强制功能。在
访问控制的上下文内,对象履行目标或发起者角色。此功能要求有关目标、发起者和交互的访问控制
信息。
发起者根据访问控制功能要求与目标交互。访问控制判定功能根据访问控制信息判定是否允许或
拒绝访问;并由访问控制强制功能执行此判定。
注:访问控制判定功能和访问控制强制功能可由目标角色的对象或由其他对象提供。
15.3
安全审计功能
安全审计功能提供有关安全动作的信息的监视和收集,随后分析这些信息以评审安全策略、控制和
规程。
安全审计功能包括下列每项功能:
———报警收集器功能;
———报警检验器功能;
———审计跟踪分析器功能;
———审计跟踪归档器功能;
———审计记录器功能;
———审计跟踪检验器功能;
———审计跟踪收集器功能。
15.4
鉴别功能
鉴别功能对对象声称的身份提供保证。在鉴别上下文中,对象履行一种或几种下列角色:
53
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———委托者;
———申请者;
———可信第三方。
鉴别要求使用交换鉴别信息。
注
1
:
ODP
系统中任何一个可识别的对象可以是鉴别的委托者,包括模拟人的对象和模拟计算机系统的对象。
注
2
:启动鉴别的对象未必是申请者。
鉴别有两种形式:
———对等实体鉴别,提供在通信关系上下文中委托者身份的证实;
———数据原发鉴别,提供负责特定数据单元的委托者身份的证实。
注:鉴别机制在
GB
/
T18794.2
—
2002
分类。
在涉及两个对象的鉴别中,任一个或两个对象可具有申请者角色。在两个对象都具有申请者角色
时,这种鉴别方式称之为相互鉴别。交换鉴别信息由启动对象传递到响应对象,然后,进一步的交换鉴
别信息可在反方向上传递。还可发生附加交换:不同鉴别机制要求不同数量的交换。对等实体鉴别总
是涉及与申请者的交互。数据原发鉴别不必涉及与申请者的交互。
申请者支持获得请求鉴别实例所需信息的操作和产生交换鉴别信息的操作。检验者支持获得请求
鉴别实例所需信息的操作和检验已接收交换鉴别信息和/或产生这种信息的操作。可以与鉴别服务者
和申请者或检验者(或两者),或鉴别交换之前或期间交换信息。
鉴别功能可以使用密钥管理功能。
15.5
完整性功能
完整性功能检测和/或防止未授权创建、替代或删除数据。
完整性功能包括所有下列功能:
———屏蔽;
———确认;
———非屏蔽。
在完整性上下文中,对象履行下列一种或几种角色:
———完整性保护的数据原发者;
———完整性保护数据接受者。
完整性保护数据由原发者传向接受者。完整性保护数据原发者支持提供屏蔽功能的界面。完整性
保护数据接受者支持提供确认或非屏蔽功能的界面。
完整性功能可以使用密钥管理功能。
15.6
机密性功能
机密性功能防止未授权信息泄露。
机密性功能包括功能隐藏和外露。
在机密性上下文中,对象履行下列角色之一或两者:
———机密性保护信息原发者;
———机密性保护信息接受者。
机密性保护信息由原发者传递给接受者。机密性保护信息原发者支持提供屏蔽功能的界面。机密
性保护信息接受者支持提供外露功能的界面。
机密性功能可以使用密钥管理功能。
15.7
抗抵赖功能
抗抵赖功能防止与一种交互有关的一个对象否认参与整个或部分这种交互。
在抗抵赖上下文中,对象履行下列一种或几种角色:
———(抗抵赖数据)原发者;
63
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———(抗抵赖数据)接受者;
———证据生成者;
———证据使用者;
———证据检验者;
———抗抵赖服务请求者;
———公证者;
———审判员。
抗抵赖功能使用抗抵赖证据。在具有原发证明的抗抵赖中,对原发交互,原发者具有抗抵赖证据生
成者的角色并在参与交互的确认中包含此证据。接受者具有证据使用者的角色并使用证据检验者(可
以是本身)的服务以获得证据充分性的信心。在具有投递证明的抗抵赖中,对这种交付交互,接受者具
有抗抵赖证据生成者的角色,并在参与这种交互的确认中包含此证据。原发者具有证据使用者的角色
并使用证据检验者(可以是本身)的服务以获得证据充分性的信心。
公证者提供原发者和/或接受者所要求的功能。这些可以包括
GB
/
T18794.4
—
2003
中规定的公
证、时戳、监视、认证、证书生成、告示生成、告示验证和交付。
万一持有异议,审判员收集持异议方(以及可选择公证者)的信息和证据并应用
GB
/
T18794.4
—
2003
所述的解决功能。
抗抵赖功能可以使用密钥管理功能。
15.8
密钥管理功能
密钥管理功能提供密码密钥管理用的设施,包括下列所有要素:
———密钥生成;
———密钥注册;
———密钥认证;
———密钥注销;
———密钥分发;
———密钥存储;
———密钥存档;
———密钥删除;
在密钥管理上下文中,对象可以有下列一种或几种角色:
———认证管理机构;
———密钥分发中心;
———密钥转换中心;
认证管理机构是可信的第三方,它创建和授予
GB
/
T17901.1
—
1999
定义的证书。密钥分发中心
提供在授权获得密钥的对象之间可靠建立密钥管理信息的手段。密钥转换中心是密钥分发中心的一种
特殊形式,它在不同安全域的对象之间建立密钥管理信息。
16ODP
分布透明性
在
ODP
系统中,分布透明性是选择性的。本参考模型描述如何达到下列分布透明性:
———访问透明性;
———失效透明性;
———位置透明性;
———迁移透明性;
———持久透明性;
———重定位透明性;
73
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———复制透明性;
———事务透明性。
ODP
标准能定义:
———本参考模型中描述的细化;和
———这些标准所要求的附加分布透明性。
按照有关从包含透明性模式的计算规范映射到使用特定
ODP
功能和工程结构的规范的制约定义
透明性以提供所要求的屏蔽形式。
通道中的桩、绑定器、协议对象和截转器的行为由适用于此通道的分布透明性(例如,访问透明性,
重定位透明性)组合来确定。
在要求一种以上分布透明性的某些实现标准中,可以规定支持各个透明性的对象的组合规则。在
要求一种以上分布透明性的其他实现标准中,单个对象可以提供组合的分布透明性。
本参考模型中的透明性描述至少支持下列透明性组合:
a
)
访问和位置透明性;
b
)
a
)和重定位透明性;
c
)
b
)和迁移透明性;
d
)
b
)和资源透明性;
e
)
b
)和失效透明性;
f
)
a
)和事务透明性;
g
)
b
)和事务透明性。
16.1
访问透明性
访问透明性屏蔽数据表示和调用机制的差别,以致能在对象之间互工作。
通过选择合适的通道结构(例如,在此通道中,桩提供合适的变换,例如整理成正则数据表示)提供
访问透明性。
16.2
失效透明性
从一个对象来看,失效透明性屏蔽其他对象(或本身)失效和可能的恢复而能容错。
16.2.1
概念
16.2.1.1
稳定性模式:对象将不呈现这些失效模式的规范。
16.2.2
规则
通过下列一种方法,失效透明性细化能满足稳定性模式:
———将对象安置在一个排除规定失效的基础设施的结点处;
———使用检测点和恢复功能使对象稳定;
———使用复制功能使对象稳定。
16.2.2.1
复制
在复制的情况下,失效透明性细化包括下列每一步骤:
———对计算对象,定义支持对象检测点和删除的对象管理界面;
———引入复制功能;
———制订包含此对象的对象簇的复制策略;
———将支持复制的重定位器与每个对象界面相联系。
在本参考模型定义的体系结构中,基于对象簇复制的失效透明性要求重定位透明性。
16.2.2.2
检测点和恢复
在检测点和恢复的情况下,失效透明性细化包括下列每一步骤:
———对计算对象,定义支持对象检测和删除的对象管理界面;
———引入检测点和恢复功能;
83
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
———制订包含此对象的对象簇的检测点的恢复策略;
———将支持恢复的重定位器与每个对象界面连接。
基于对象设检测点和恢复的失效透明性要求重定位透明性。
16.3
位置透明性
在对界面标识和绑定时,位置透明性屏蔽有关空间位置信息的使用。这允许对象访问界面无须使
用位置信息。
16.4
迁移透明性
从一个对象来看,迁移透明性屏蔽系统改变此对象位置的能力。
16.4.1
概念
16.4.1.1
机动性模式:对对象机动性设置限制的规范。
机动性模式包括:
———与此对象交互的等待时间限制;
———对象线程的性能限制;
———此对象位置的安全限制。
16.4.2
规则
通过使用迁移功能提供迁移透明性以协调对象位置从而满足机动性模式。迁移透明性细化包括下
列步骤:
———对计算对象,定义支持对象设检测点和删除的对象管理界面;
———引入迁移功能;
———制订包含此对象的对象簇的迁移策略;
———将重定位器与每个对象界面相联系。
在本参考模型定义的体系结构中,迁移透明性对与此对象簇绑定的所有通道要求重定位透明性。
16.5
持久透明性
从一个对象来看,持久透明性屏蔽其他对象(或本身)的去激活和重激活。
16.5.1
概念
16.5.1.1
持久性模式:对于使用特定处理、存储和通信功能的限制规范。
16.5.2
规则
通过使用重激活和去激活功能提供持久透明性,以协调对象簇去激活和重激活从而满足持久性模
式。持久透明性包括下列步骤:
———对计算对象,定义支持对象设检测点和删除的对象管理界面;
———引入去激活和重激活功能;
———制订包含此对象的对象簇的去激活和重激活策略;
———将支持重激活的重定位器与此对象的每个界面相联系。
在本参考模型定义的体系结构中,持久透明性对此对象簇绑定的所有通道要求重定位透明性。
16.6
重定位透明性
重定位透明性屏蔽一个界面脱离与其绑定的其他界面的重新定位。
重定位透明性要求:
———重定位器与对象簇中的每个界面相联系;
———有关对象位置变化的信息传送给重定位器(例如,通过对象簇管理器);
———绑定器通过通道交换交互中的附加信息以证实由此通道所支持的绑定的有效性;此数据从与
此通道绑定的界面的工程界面引用相关联的空间和时间位置导出。
如果绑定器检测到由于一个对象的重定位,通道已变成无效(例如,通过观察通信失效)时,绑定器
必须确认曾与此通道绑定的界面的工程界面引用,如果需要,重建此通道。由重定位功能执行此确认。
93
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
注:如果此通道失效是由于对象去激活或由于先前曾设检测点的对象失效引起的,重定位器将包含恢复含有此对
象的对象簇的规程以作为确认部分。
16.7
复制透明性
复制透明性屏蔽一组行为上相互兼容的对象的使用,以支持一个界面。
16.7.1
概念
16.7.1.1
复制模式:有关对象复制限制,包括对象可用性限制和对象性能限制的规范。
16.7.2
规则
通过使用复制功能提供复制透明性以协调对象的复制从而满足复制模式。复制透明性细化包括下
列步骤:
———对计算对象,定义支持对象设检测点和删除的对象管理界面;
———引入复制功能;
———制订包含此对象的对象簇的复制策略;
———将重定位器与对象的每个界面相联系。
在本参考模型定义的体系结构中,复制透明性对此对象簇要求重定位透明性。
16.8
事务透明性
事务透明性屏蔽对象配置中活动的协调以实现相容性。
16.8.1
概念
16.8.1.1
事务模式:定义事务及其相关性的动态模式和不变模式。
16.8.2
规则
通过使用事务功能提供事务透明性以协调动作行为从而满足事务模式。事务透明性细化包括下列
步骤:
———从事务模式导出事务功能策略;
———对对象状态增加检测点和恢复操作;
———通过事务功能替代对象间的绑定;
———扩充计算对象的界面。
对象界面的扩充包括通知所关心动作出现和撤消之后恢复对象状态的功能。
04
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
附
录
A
(规范性附录)
形式计算超类型/子类型规则
本附录定义计算界面告示子类型划分规则。计算界面告示的类型可能比
7.2.2.4
参数规则隐含的
阶更高。本附录仅形式化子类型划分规则的一阶子集———形式化计算界面告示类型更高阶的细节留待
今后进一步研究。
本附录定义由简单类型语言组成的一阶类型系统以及类型相等规则和告示子类型划分规则。本附
录还描述此类型系统合理的和完整的类型检验算法。信号界面告示类型、操作界面告示类型和流界面
告示类型使用类型语言加以定义。由于
7.2.4.2
只是部分定义流界面告示子类型划分,因此,本附录只
是形式化应于相应之间的子类型划分规则。
A.1
记法和约定
使用下列记法:
———
α
、
β
、
γ
等表示类型;
———
t
、
s
等表示类型的标识符(即类型变量)和基本类型(即类型常数);类型变量(和类型常数)集称
为
Tvar
;
———
a
、
b
、
c
、
a1
、
a2
、
an
等表示类型语言中结构元素的标识符或标识;标识集数为
Λ
;
———
α
[
β
/
t
]表示
β
代替
α
中的
t
;
———
Nil
表示预先规定的类型常数。
A.2
类型系统
类型系统包含类型常数、函数、笛卡儿积、记录、带标记并集递归定义。类型语言
Type
由图
A.1
的
语法给出。
α∷=t
┴
┬
α→
β
α1×
…
×α
n
〈
a
1
:
α1
,…,
a
n
:
αn
〉
[
c
1
:
γ1
,…,
c
n
:
γn
]
μ
t.α
图
A.1
类型说明抽象语法
基本类型称做
┬
(顶)和
┴
(底)。它们在子类型关系中分别担当最高和最低元素的角色。函数表示
为
α→
β
。笛卡儿积表示为
α1×
…
×α
n
。并集表示为:[
c
1
:
γ1
,…,
c
n
:
γn
]。记录表示为〈
a
1
:
α1
,…,
a
n
:
αn
〉。
μ
是可变绑定操作符。递归类型可用与标识符绑定的类型和引用另一个中的一个类型标识符
构造。
必要时,括号用来确定优先顺序。在没有它们的情况下,
→
联到右边。并且
μ
的影响范围尽可能
向右延伸。
α
中出现的自由变量集表示为
FV
(
α
)。
A.2.1
子类型划分规则
14
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
此条给出给定语言的类型相等规则和子类型划分规则。
类型
α
在用类型变量时是收敛的,表示为
α↓t
,条件是
t
不随意出现在
α
中,或
α
可以通过按下列
形式之一的类型展开而重写:
———
α
1
→α
2
;
———
<a
1
:
α
1
,…,
a
m
:
α
m
>
;
———[
c
1
:
γ
1
,…,
c
n
:
γ
n
];
———
α
1
×
…
×α
n
。
图
A.2
中给出类型相等规则。类型相等用“
=
”表示。
(
E.1
)
α=α
(
E.2
)
α=
β
β
=α
(
E.3
)
α=
β
,
β
=γαγ
(
E.4
)
α1=α2
,
β1
=
β2
α1
β1
=α
2β1
(
E.5
)
α=
β
μ
t.α=
μ
t.
β
(
E.6
)
iε
{
1
,…,
n
},
αi=
βi
α1×
…
×α
n
=
β1
×
…
×
βn
(
E.7
)
iε
{
1
,…,
n
},
αi=
βi
<a1
:
α1
,…,
a
n
:
αn>=<a1
:
β1
,…,
a
n
:
βn
>
(
E.8
)
iε
{
1
,…,
n
},
αi=
βi
[
a
1
:
α1
,…,
a
n
:
αn
]
=
[
a
1
:
βn
,…,
a
n
:
βn
]
(
E.9
)
μ
t.t=⊥
(
E.10
)
α
[
μ
t.α
/
t
]
=
μ
t.α
(
E.11
)
α
[
β
/
t
]
=
β1
,
α
[
β2
/
t
]
=
β2
αt
β1
=
β2
图
A.2
类型相等规则
子类型划分规则引用判定规则的形式给出,该判定类似于
prolog
程序。判定的形式是:
Г├α≤
β
,
式中
Г
是类型变量形式为{
t
1
≤s
1
,…,
t
n
≤s
n
}的一组子类型划分假设。一般规则可采用下列形式:
Г├α
1≤β1
,
Г├α
2≤β2
Г├α≤
β
这不是形式上,而意指为了确定
Г├α≤
β
是否成立,我们首先必须尝试能否确定
Г├α
1
≤
β1
和
Г├
α
2
≤
β2
。如果达到这些子目标,那么,人们可以断定
α
是
β
的子类。
子类型划分规则在图
A.3
给出。如果使用子类型划分规则和相等规则能求得
├α≤
β
,则可以说
α
是
β
的子类型。
(
S.1
)
α=
β
Г├α≤
β
(
S.2
)
Г├α≤
β
,
Г├
β
≤γГ├α≤γ
(
S.3
)
t≤s∈ГГ├t≤s
(
S.4
)
Г├⊥≤α
(
S.5
)
Г├α≤⊥
(
S.6
)
Г├α2≤α1
,
Г├
β1
≤
β2
Г├α1
β1
≤α2
β2
≤
(
S.7
)
tε
{
1
,…,
n
},
Г├αi≤
βi
Г├<a1
:
α1
,…,
a
m
:
αm>≤<a1
:
β1
,…
a
n
:
βn
>
(
n≤m
)
(
S.8
)
tε
{
1
,…,
n
},
Г├αi≤
βi
Г├
[
a
1
:
α1
,…,
a
n
:
αn
]
≤
[
a
1
:
β1
,…
a
n
:
βn
]
(
n≤m
)
(
S.9
)
tε
{
1
,…,
n
},
Г├αi≤
βi
Г├α1×
…
×α
n≤β1
×
…
×
βn
(
S.10
)
Г∪
{
t≤s
}
├α≤
β
Г├
μ
t.α≤
μ
s.
β
(
t
只能在
α
中;
s
只能在
β
中,
t
、
s
不在
Г
中)
图
A.3
子类型划分规则
24
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
A.2.2
类型定义
Type
元素由一组相互独立的、设计成合式环境的方程式定义。一种环境是类型变量和属于
T
的
类型之间的有限映射,
T
是
Type
的非递归子集。合式环境
γ
是这样的环境以致与
γ
域中变量
t
有关的
类型
α
的自由变量全都属于
γ
域。直观上,环境中的每个类型变量表示一类型。类型变量和环境中元
素
T
之间的联系可理解为相应类型的相互独立定义的方程式。
形式上,假设
γ
wf
是合式环境集。并定义
f
:
A→
f
B
为有限域
A
到
B
的部分函数;
FV
(
α
)表示出现
在
α
)中的自由变量集:
γ
wf
=
def
{
γ
:
Tvar
→f
Type|t
,
t′
∈
dom
(
γ
),
t′
∈
FV
(
γ
(
t
))
t′∈dom
(
γ
)}
令
γ=
{
t|→α
,
t
1
|→α
1
,…,
t
q
|→α
q
}。
γ\t
表示下式环境:
γ\t=
def
{
t
1
|→α
1
,…,
t
q
|→α
q
}
在合式环境
γ
(
t∈dom
(
γ
))的上下文中,与类型变量
t
有关的类型定义为
Val
(
t
,
γ
),
Val
是图
A.4
中分别定义的类型和环境的函数。因此,
Type
的任一元素可定义为
Val
(
t
,
γ
),式中
γ
是合式环境
和
t∈dom
(
γ
)
(
IT.1
)
Val
(
⊥
,
γ
)
=⊥
(
IT.2
)
Val
(
T
,
γ
)
=T
(
IT.3
)
Val
(
Nil
,
γ
)
=Nil
(
IT.4
)
Val
(
α→
β
,
γ
)
=Val
(
α
,
γ
)
→Val
(
β
,
γ
)
(
IT.5
)Val(
<a1
:
α1
,…,
a
n
:
αn>
,
γ
)
=<a
1
:
Val
(
α1
,
γ
),…,
a
n
:
Val
(
αn
,
γ
)
>
(
IT.6
)Val([a
1
:
α1
,…,
a
n
:
αn
],
γ
)
=
[
a
1
:
Val
(
α1
,
γ
),…,
a
n
:
Val
(
αn
,
γ
)]
(
IT.7
)Val(
α1×
…
×α
n
,
γ
)
=Val
(
α1
,
γ
)
×Val
(
αn
,
γ
)
(
IT.8
)如果
t∈dom
(
γ
),那么
Val
(
t
,
γ
)
=t
(
IT.10
)如果
t∈dom
(
γ
),那么
Val
(
t
,
γ
)
=
μ
t.Val
(
γ
(
t
),
γ\t
)
图
A.4
界面类型定义的语义
A.2.3
类型检测的算法
本条定义类型检测的算法,相对上述类型相等规则和子类型划分规则是合理的和完整的。此算法
涉及二个合式环境和
ε
1
和
ε
2
以致
dom
(
ε
1
)
∩dom
(
ε
2
)
=
(要比较的类型与二个变量有关,
ε
1
中一个,
ε
2
中是另一个)。这描述为涉及
ε=defε
1
∪ε
2
的推理规则的集合和形式为{
t
1
≤s
1
,…,
t
n
≤s
n
}的集合
∑
,它
记录在执行此算法期间发现的变量的结果。推理规则对应于形式为
∑
,
ε├α≤
β
的判定逻辑关系。判
定直观上捕获在
∑
和
ε
的上下文中断言
α≤
β
成立。起初的判定{
t
1≤
s
1
,…,
t
n≤
s
n
}必须是这样以致{
t
1
,
s
1
,…,
t
n
,
s
n
}
∩dom
(
ε
)
=
。
推理规则在图
A.5
中给出。在图
A.5
中,
α
,
β
∈Type
,
t
、
s
表示任意的变量,
μ
表示不在
dom
(
ε
)中
变量。
如果初始目标
∑
,
ε├α≤
β
,此算法要点在于应用逆向推理规则,产生(
rec
)、(
fun
)、(
rcd
)、(
pro
)和
(
uni
)情况的子目标。用这种方法构成的目标树称之为执行树。执行树总是有限的:如果
t≤s
是加到
∑
的一种前提,那么,
t
和
s
是
dom
(
ε
)中的类型变量;还有,规则(
fun
)、(
pro
)、(
uni
)和(
rcd
)通过用目标的
子表达式的代替减少当前目标的大小并且每次(
rec
)应用增大
∑
。
34
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
(
assmp
)
t≤s∈∑∑
,
ε├t≤s
(
bot
)
∑
,
ε├⊥≤
β
(
top
)
∑
,
ε├α≤T
(
var
)
∑
,
ε├u≤u
(
fun
)
∑
,
ε├α2≤α1
,
∑
,
ε├
β1
≤
β2
∑
,
ε├α1→
β1
≤α2→
β2
≤
(
rcd
)
t∈
{
1
,…,
n
},
∑
,
ε├αi≤
βi
∑
,
ε├<a1
:
α1
,…,
a
n
:
αn>≤<a1
:
β1
,…,
a
n
:
βn
>
(
n≤m
)
(
uni
)
t∈
{
1
,…,
n
},
∑
,
ε├αi≤
βi
∑
,
ε├
[
a
1
:
α1
,…,
a
n
:
αn
]
≤
[
<a1
:
β1
,…,
a
m
:
βm
]
(
n≤m
)
(
pro
)
t∈
{
1
,…,
n
},
∑
,
ε├αi≤
βi
∑
,
ε├α1×
…
×α
n≤β1
×
…
×
βn
(
rec
)
∑∪
{
t≤s
},
ε├ε
(
t
)
ε
(
s
)
∑
,
ε├t≤s
图
A.5
类型检测推理规则
如果所有的叶对应于规则(
assmp
)、(
bot
)、(
top
)或(
var
)之一的应用,则执行权成功。如果至少一
个叶是未履行的目标(即没有规则能应用于它),则为失败。如果对应于目标
ε├α≤
β
的执行树成功,
则这记为
├
A
α≤
β
。
已知递归类型
α
和
β
,以致
α=Val
(
t
1
,
ε
1
)和
β
=Val
(
t
2
,
ε
2
)(
ε
1
和
ε
2
如上所述)子类型划分关系,则
此算法通过下列定义引入
≤
A
:
α≤
Aβ
├
A
t
1≤
t
2
此新子类型划分关系与先前的关系一致,即相对下式类型相等和类型子类型划分规则,此算法是合
理的和完全的:
———已知
T
中的
α
、
β
,如果
α≤
Aβ
,那么
α≤
Rβ
;
———已知
T
中的
α
、
β
,如果
α≤
Rβ
,那么
α≤
Aβ
。
A.3
信号界面告示类型
信号界面告示类型通过用
Type
语言解释它们予以形式化。信号界面告示类型集记为
Type
sig
。
通过使用二个函数:
intype
:
Type
sig
→Type
和
outype
:
Type
sig
→Type
抽象定义
Type
sig
的元素。在一给
定的信号界面告示类型中,
intype
描述起动信号集,
outype
描述响应信号集。
通过
intype
和
outype
函数使与信号界面告示类型相联系的
Type
元素,通过用具有共域的合成环
境定义为由图
A.6
语法定义的
Type
的子集,式中标记
a
i
,
i∈
{
1
…
q
}假设是不同的。事实上,图
A.6
提
供信号界面告示的抽象语法。标记
a
i
对应于信号名称。
Arg
产生式对应于信号参数。
Sigsig
产生式
对应于各个信号告示。各个信号界面采用的函数形式强调与通告告示的类似。
信号界面类型的子类型划分关系,
≤s
,由下式定义:
l1
,
l
2∈
Type
sig
,
l
1≤
l
2≡
l
1
.intype
≤
l
2
.intype
∧
l
2
.outype
≤
l
1
.outype
α∷=<aiSigsig
,…,
a
q
:
Sigsig>
Sigsig∷=Arg→Nil
Arg∷=Nil|t1×
…
×t
p
图
A.6
信号界面告示类型抽象语法
44
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
A.4
操作界面告示类型
操作服务器界面告示类型通过类型语言对其解释的方法予以形式化(操作客户界面告示类型直接
由补码导出)。操作服务器界面类型集记为
Type
0
(
S
)。
Type
0
(
S
)的元素通过使用函数
optype
:
Type
0
(
S
)
→Type
给予抽象定义。
通过
optype
函数使与操作界面告示类型相联系的
Type
元素,通过具有共域的合式环境定义为由
图
A.7
语法定义的
Type
的子集,式中:标记
a
i
,
i∈
{
1
,…,
q
}假设是不同的,标记
c
i
,
i∈
{
1
,…,
q
}假设在
opsig
产生式的上下文中是不同的。
α∷=<ai
:
opsig
,…,
a
q
:
opsig>
opsig∷=Arg→Term|ArgNil
Term∷=
[
c
1
:
Arg
,…,
c
q
:
Arg
]
Arg∷=Nil|t1×
…
×t
p
图
A.7
操作界面告示类型抽象语法
事实上,图
A.7
提供了操作界面告示的抽象语法。
opsig
产生式对应各个操作告示。特别是,图
A.7
形式
Arg→Term
的
opsig
产生式对应于询问。形式
Arg→Nil
的
opsig
产生式对应通告。
Arg
产
生式对应调用参数。
Term
产生式对应终止。
opsig
产生式左边的
Nil
意指已知的调用没有任意参数。
opsig
产生式右边(即通告告示)中的
Nil
意指没有期望终止。标记
a
i
对应操作方式。标记
c
1
对应终
止名称。
服务器操作界面类型的子类型划分关系,
≤o
,由下式定义:
l
1
,
l
2∈
Type
0
(
S
),
l
1≤
l
2≡
l
1
.optype
≤
l
2
.optype
A.5
流界面类型
定义流界面完整的告示子类型划分规则不属于本参考模型范围。然而,注意由使用类型语言对其
的解释能使各个流告示类型形式化。与流告示相联系的
Type
元素,通过具有共域的合式环境定义为
由图
A.8
的语言定义的
Type
的子集。式中:标记
a
i
对应流名称。
与对应流(假设它们具有相同的起因)相联系的
7.2.4.2
子类型划分规则正好对应于此情况的子类
型关系
≤
。
α∷=<ai
:
Flowsig>
Flowsig∷=Arg→Nil
Arg∷=Nil|t
图
A.8
流界面告示类型抽象语法
A.6
例子
假定有下列服务器操作界面告示类型定义(即合式环境):
γ=
{
t|
→α
,
ft|→
β
}
式中:
α=de
f
<op
:
t→
[
ok
:
Nil
,
nok
:
Nil
],
factory
:
Nil→
[
ok
:
ft
]
>
β
=
def<
new
:
Nil→
[
ok
:
t
]
>
式中,
t
1
,
ft∈Tvar
;
op
、
factory
、
new
、
ok
和
nok∈Λ
(
op
、
factory
和
new
是操作名称;
ok
和
nok
是终
54
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
止名称)。
直观上,环境
γ
对应于二个类型
t
和
ft
的定义。
ft
只备有一种操作:
new
,它没取自变量并将引用
返回到类型
t
的情况。人们可以想像,例如,
ft
是
factory
对象的类型,而此对象根据需求,即根据操作
new
的每次调用创建具有类型
t
情况作为自变量;这是递归定义的第一种情况。操作
factory
没取自
变量并将引用返回到类型
ft
情况。人们可以想象,例如,对管理用途而言,具有类型
t
界面的每个对
象,根据请求(即一旦调用操作
factory
)是能够将引用返回到创建它的
factory
。因为
ft
的定义参照
t
,
所以这是递归定义的第二种情况。
应用上述给出的
Val
定义,定义
γ
1
=
def
{
ft|→
β
},加上
=
符号和使用类型相等规则
E.10
,可以获得:
Val
(
t
,
γ
)
=
μ
t.Val
(
α
,{
ft|→
β
}),
=
μ
t.
<
op
:
Val
(
t
,
γ
1
)
→
[
ok
:
Nil
,
nok
:
Nil
]
factory
:
Nil
→
[
ok
:
Val
(
ft
,
γ
1
)]
>
=
μ
t.
<
op
:
t
→
[
ok
:
Nil
,
nok
:
Nil
]
factory
:
Nil
→
[
ok
:
μ
ft.Val
(
β
,
)]
>
=
μ
t.
<
op
:
t
→
[
ok
:
Nil
,
nok
:
Nil
]
factory
:
Nil
→
[
ok
:
μ
<ft<
new
:
Nil
→
[
ok
:
t
]
>
]
>
=
μ
t.
<
op
:
t
→
[
ok
:
Nil
,
nok
:
Nil
]
factory
:
Nil
→
[
ok
:
<
new
:
Nil
→
[
ok
:
t
]
>
]
>
64
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
书书书
6
9
9
1
:
3
6
4
7
0
1
C
E
I
/
O
S
I
/
3
0
0
2
—
3
.
4
1
7
8
1
T
/
B
G
中华人民共和国
国家标准
信息技术
开放分布式处理
参考模型
第
3
部分:体系结构
GB
/
T18714.3
—
2003
/
ISO
/
IEC107463
:
1996
中国标准出版社出版发行
北京复兴门外三里河北街
16
号
邮政编码:
100045
网址
www.bzcbs.com
电话:
6852394668517548
中国标准出版社秦皇岛印刷厂印刷
各地新华书店经销
开本
880×12301
/
16
印张
3.25
字数
95
千字
2004
年
5
月第一版
2004
年
5
月第一次印刷
书号:
155066
·
120582
定价
21.00
元
如有印装差错
由本社发行中心调换
版权专有
侵权必究
举报电话:(
010
)
68533533
|
|