UNICON是一个架构描述语言 翻译 BY Lychee「建议收藏」

UNICON是一个架构描述语言 翻译 BY Lychee「建议收藏」UNICON是一个架构描述语言,其重点是支持各种建筑部件和风格,在现实世界中,从他们的体系结构描述构建系统发现

UNICON

一个架构
描述语言

其重点

支持
各种
建筑
部件和
风格

在现实世界中


他们

体系结构描述
构建
系统
发现


描述
架构
UNICON
的感觉

这里

一个简短的例子


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

UNICON是一个架构描述语言 翻译 BY Lychee「建议收藏」

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

UNICON是一个架构描述语言 翻译 BY Lychee「建议收藏」

球员和角色的关联相互作用的部件整体配置可以指定
 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


今天的文章UNICON是一个架构描述语言 翻译 BY Lychee「建议收藏」分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/88949.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注