软件体系结构2-05管道--过滤器结构

上传人:j****9 文档编号:54779669 上传时间:2018-09-19 格式:PPT 页数:14 大小:379KB
返回 下载 相关 举报
软件体系结构2-05管道--过滤器结构_第1页
第1页 / 共14页
软件体系结构2-05管道--过滤器结构_第2页
第2页 / 共14页
软件体系结构2-05管道--过滤器结构_第3页
第3页 / 共14页
软件体系结构2-05管道--过滤器结构_第4页
第4页 / 共14页
软件体系结构2-05管道--过滤器结构_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《软件体系结构2-05管道--过滤器结构》由会员分享,可在线阅读,更多相关《软件体系结构2-05管道--过滤器结构(14页珍藏版)》请在金锄头文库上搜索。

1、第 5 讲:管道过滤器结构2.4 管道过滤器结构2.4.1 管道过滤器结构组成原理1. 设计思想2. 结构组成3. 技术特征4. 优缺点评价2.4.2 管道过滤器结构应用实例1. 编译器流水线结构2. 集成计划管理的数据流模型3. 工作流元过程模型,2.4 管道过滤器结构学科关联:编译器,UNIX管道,结构化应用2.4.1 管道过滤器结构组成原理PF结构:基于功能抽象与IPO控制的数据流系统1. 设计思想:问题抽象流程化,处理过程并行化(1) 针对问题域中的过程性描述进行建模元素抽象,包括数据的输入过程,处理过程和输出过程过程性问题的分解同样具有层次性,如事务级和活动级;概念层、逻辑层和物理层

2、过程的组织通过流模型构造思想来实现(2) 每一数据处理流程的组织,可以是顺序性或同时性的;形成串行和并行两种基本的控制关系(串行并行),2. 结构组成:基于“独立部件”抽象原理和过程耦合机制结构组织策略:竖式上下分布;卧式左右分布 独立部件:携带IO端口的独立功能分块过滤器;IO端口是直接针对临近过滤器之间的连接关系而言的 过程耦合:功能块间可存在三种数据流耦合方式串行连接(F1F2F4);并行连接(F1F2 F3);回环连接(F5F3) 嵌套,选择,讨论1:结构组成单元(1) 过滤器:具有一组输入输出端口的数据处理部件;输入端口称数据源,输出端口称数据池流式控制结构,用于转换或改变数据流端口

3、类型及作用:数据源:提供同一类型的数据序列的发送功能 主动式:数据源主动地把数据推入过滤器(触发) 被动式:根据过滤器的需要被动提供数据(被调用)数据池:从过滤器接收处理结果 主动式:数据池主动从过滤器中拉出数据(主动输出) 被动式:由前序过滤器把数据推入(被触发)结构组合与选择策略:查询模式;中断模式,IO激活控制方式: 后序部件从过滤器中取出数据(被动式) 前序部件向过滤器推入数据(被动式) 过滤器不断读入写出数据(处于激活状态;主动式)过滤器类型:(模型复杂性:类型控制方式)被动式: 不拥有独立进程 需通过直接的过程函数调用来激活工作过程 具有非渐进式计算单元特征主动式: 通过独立进程结

4、构并发流来完成工作 自带任务激发机制,无需外界消息触发 具有渐进式计算单元特征和连续工作能力缺点:被动式重组困难;主动式设计复杂,(2) 管道:具有数据流耦合与端接口行为能力的连接实体;可作为前后序过滤器之间IO流的导管或传输通道封装了数据访问路径及角色功能的软总线关键特征:连接方式可从过滤器计算逻辑中独立地分离出来;形成物理级的连接器,而非逻辑级的关系语义与过程模型的本质区别数据以流块单元的形式封装,以打包的形式传送;因而数据和传输顺序是不能改变的管道类型: 同步控制式:是一个先进先出的数据缓冲器,可用于主动式过滤器之间的连接 过程调用式:是一个直接的数据传输通道,可用于被动式过滤器之间的连

5、接,讨论2:管道过滤器特征技术(1) 推式机制:源端 漏端 主动式数据源拉式机制:源端 漏端 主动式数据池(2) 事务控制方式 同步:有时片设置,需等待需返回,(1:1)映射嵌套控制流,与逻辑关联 异步:无时片设置,不等待不返回,(1:m)映射选择控制流,或逻辑关联 并发:同一起点的多源性操作,(m:1)映射,控制异步性,资源封锁机制 并行:不同起点的过程重叠,(m:m)映射,控制同时性,资源共享机制,讨论3:常见的管道过滤器结构类型 管线(pipelines)结构:过滤器的IO约束是一个线性序列即只有单输入和单输出的拓扑结构形式(常用)实例:顺序表,队列变异:一对多形式的IO关系;如树型结构

6、,有向图(环)用于改善结构的流能力,IO具有非线性约束性质 命名管道(namedpipes)结构:亦称类型管道,过滤器之间所传送的数据具有严格的数据类型定义,并且通过对管道的命名来完成数据传送过程的封装特性:具有信道加密特性,可用于数据安全性要求高的场合缺点:难以维护,难以重用,3. 技术特征:IPO流结构过程调用同步控制机制 过滤器必须是独立部件,各过滤器之间不能共享数据 临近过滤器间只受IO影响,不受对方控制作用的影响 非临近过滤器之间不共享任何运行状态 每次变换处理后的过滤器均回到统一的原始等待状态 过滤器的设计遵循黑盒法原理 (难点) 不需知道上下游过滤器的语义约束互不产生约束关联 只

7、考虑各自的输入输出形式 自身的计算逻辑不依赖于各过滤器的渐进式执行顺序 被动式结构采用过程调用机制,不支持渐增计算模式;主动式结构采用进程调度机制,可支持渐增计算模式 管道与过滤器的功能可明显分离,互相独立,4. 优缺点评价优点: 支持结构重组和部件重用设计;数据格式一致和接口规范一致的过滤器之间,可任意连接组合 支持快速原型系统的设计实现,可作为领域体系结构风格 系统易于维护和升级;只要遵循IO约定,则易于更换部件 支持并行处理和过程的并发执行,以及特定的过程分析,如吞吐和死锁分析缺点: 易于导致批处理;即管道传送数据流的功能退化 不适合处理交互式应用(因过滤器的转换处理特征) 不适合大量数

8、据共享的应用(共享代价高且不灵活) 独立部件间数据传送效率低;因而并行运行难以提高整个系统的运行效率,2.4.2 管道过滤器结构应用实例典型应用:传统编译器结构;集成计划管理模型;工作流元过程模型1. 编译器流水线结构1970年,程序编译被看作是一个顺序处理过程;编译程序模型设计成一个典型的流水线结构,这是从顺序批处理结构进化而来1980年,中间表示法(如分析树)成为研究重点,它产生编译的开始阶段,在编译过程中执行,在结束时被抛弃整个模型仍保留顺序数据流结构,编译器结构的发展:流水线结构 流水线结构 中间表示法(分析树)数据中心结构过程:词法标识符号创建中间代码转换操作机器代码,2. 集成计划管理的数据流模型,3. 工作流元过程模型元过程(过程类,活动,参与者,转换条件,相关数据,相关应用),

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号