UNICON是一个架构描述语言 翻译 BY Lychee

UNICON 一个架构 描述语言 其重点 支持 各种 建筑 部件和 风格 在现实世界中 他们 体系结构描述 构建 系统 发现 描述 架构 UNICON 的感觉 这里 一个简短的例子

 UNICON体系结构描述一套组件和连接器组件是一个数据或计算轨迹连接介导组件之间相互作用每个组件都有一个接口,导出球员这些球员使人产生该组件可以与外界进行交互的方式同样一个连接协议出口产生的方式连接可以调解互动角色为了说明这一点,这里是一个例子制作使用UNICON图形化编辑器


该图的特点两部分组成,标记A和B,这是UNIX的过滤他们每个出口三名球员以三角形绘制;左侧球员代表输入流标准”右边的球员代表输出流“标准输出“标准错误两个组件之间的连接器,它代表了UNIX管道连接出口的两个角色一个晃来晃去;晃来晃去一个代表散热器
 在上面的图片没有组件和连接器之间互动;什么迷上了要指定应该有一个连接一个球员必须与一定的作用在图形编辑器这是通过拖动球员作用,并放弃它散热器和B的输入下降结果如下所示:


球员和角色的关联相互作用的部件整体配置可以指定
 UNICON当前版本支持不仅像那些上面的管道过滤系统过程调用共享数据交互模块分布式系统的RPC调用共享处理器根据各种实时学科和数据库访问过程SQL命令

下面举一个例子来说明一下:

1 构件的定义

<component>:==COMPONENT <identifier>                                    

<interface>                                 

   <component_implementation>                          

    END <identifier>

   定义包括两方面的内容,即接口和实现。

2 构件接口的定义

接口定义了构件所承担的计算任务,规定了使用构件时的约束条件。还对构件的性能和行为做要求。

<interface>:==INTERFACE IS                                  

TYPE <component_type>                               

    <property_list>                                

   <player_list>


构件类型: 构件所承担的功能种类

属性: 对构件整体信息进行补充说明,
         以“特性-值”形式成对出现


3 构件实现的定义

<component_implementation>:==  

<primitive_implementation>|<composite_implementation>
<primitive_implementation>:==IMPLEMENTATION IS                                                    

 <property_list>                                                       

<variant_list>                                                       

END IMPLEMENTATION
<composite_implementation>:==IMPLEMENTATION IS                                                        

<property_list>                                                       

 <composite_statement_list>                                                        

END IMPLEMENTATION

4 连接件的定义

<connector>:==CONNECTOR <identifier>                                   

<protocol>                                   

<connector_implementation>                                

END <identifier>

定义包括两方面的内容,即协议和实现

连接件协议的定义

协议定义了多个构件之间所允许的交互,并为这些交互提供保障

<protocol>:==PROTOCOL IS                          

 TYPE <connector_type>                           

<property_list>                           

<role_list>                           

END PROTOCOL

协议定义包括3方面信息:连接件类型、属性和角色

连接件类型表达了连接件所承担的构件交互种类

属性: 对连接件整体信息进行补充说明,
         以“特性-值”形式成对出现

角色: 通过角色在构件之间进行中介。构件和连接件 有交互时,构件的参与者和连接件的角色被关联起来。

连接件实现的定义

实现方式是UniCon语言内建的
UniCon不提供任何的机制支持用户自定义的实现

 


一下为例子:

UniCon Example

UniCon描述管道的例子。两个连接由构件和连接件实例分开。

USES p1 PROTOCOL Unix-pipe   

USES sorter INTERFACE Sort-filter   

CONNECT sorter.output TO p1.source

USES p2 PROTOCOL Unix-pipe   

USES printer INTERFACE Print-filter   

CONNECT printer.input TO p2.sink


假设一个实时系统采用客户/服务器体系结构。在该系统中,两个任务共享同一个计算机资源,这种共享通过远程过程调用(Romoter Procedure Call,RPC)实现。

component Real_Time_System     

interface is        

type General     

implementation is 
            

uses client interface rtclient                  

PRIORITY(10)                 

 ……                 

 end client                 

 uses server interface rtserver               

   PRIORITY(10)                

 ……                  

end server

establish RTM-realtime-sched with                       

 client.application1 as load                       

 server.application2 as load
 server.services as load                       

 algorithe(rate_monotonic)            

end RTM-realtime-sched            

estalbish RTM-remote-proc-call with                        

client.timeget as caller                        

server.timeget as definer                       

 IDLTYPE(Mach)            

end RTM-remote-proc-call
 end implementation end Real-Time-System

connector RTM-realtime-sched      

protocol is            

type RTScheduler             

role load is load       

end protocol       

implementation is 
 builtin       

end implementation end RTM-realtime-sched


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值