数据流体系结构是一种计算机体系结构,直接与传统的冯·诺依曼体系结构或控制流体系结构进行了对比。数据流体系结构没有概念上的程序计数器:指令的可执行性和执行仅基于指令输入参数的可用性来确定,因此,指令执行的顺序是不可预测的,即行为是不确定的。数据 流体系结构风格主要包括批处理风格和管道-过滤器风格。
1.批处理体系结构风格
在批处理风格的软件体系结构中,每个处理步骤是一个单独的程序,每一步必 须在前一步结束后才能开始,并且数据必须是完整的,以整体的方式传递。它的基本构件是独 立的应用程序,连接件是某种类型的媒介。连接件定义了相应的数据流图,表达拓扑结构。
2.管道-过滤器体系结构风格
当数据源源不断地产生,系统就需要对这些数据进行若干处理(分析、计算、转换等)。现 有的解决方案是把系统分解为几个序贯的处理步骤,这些步骤之间通过数据流连接,一个步骤 的输出是另一个步骤的输入。每个处理步骤由一个过滤器(Filter) 实现,处理步骤之间的数据 传输由管道 (Pipe) 负责。每个处理步骤(过滤器)都有一组输入和输出,过滤器从管道中读 取输入的数据流,经过内部处理,然后产生输出数据流并写入管道中。因此,管道-过滤器风格的基本构件是过滤器,连接件是数据流传输管道,将一个过滤器的输出传到另一 过滤器的输入。