Поток данных - Dataflow

В вычисление, поток данных это широкое понятие, которое имеет различное значение в зависимости от приложения и контекста. В контексте программная архитектура, поток данных относится к потоковая обработка или же реактивное программирование.

Архитектура программного обеспечения

Dataflow - это программная парадигма, основанная на идее разделения вычислительных субъектов на этапы (трубопроводы ), которые могут выполняться одновременно. Dataflow также можно назвать потоковая обработка или же реактивное программирование.[1]

Существовало несколько языков обработки потоков данных в различных формах (см. Потоковая обработка ). Аппаратное обеспечение потока данных (см. Архитектура потока данных ) является альтернативой классическому Архитектура фон Неймана. Наиболее очевидным примером программирования потока данных является подмножество, известное как реактивное программирование с электронными таблицами. Когда пользователь вводит новые значения, они мгновенно передаются следующему логическому «действующему лицу» или формуле для вычисления.

Распределенные потоки данных также были предложены как программная абстракция, которая фиксирует динамику распределенных мультипротоколов. Ориентированная на данные характеристика программирования потока данных способствует высокоуровневым функциональным спецификациям и упрощает формальные рассуждения о компонентах системы.

Аппаратная архитектура

Аппаратные архитектуры для потока данных были главной темой в Компьютерная архитектура исследования 1970-х и начала 1980-х годов. Джек Деннис из Массачусетский технологический институт был пионером в области архитектур статических потоков данных. Проекты, в которых используются обычные адреса памяти в качестве тегов зависимости данных, называются машинами статического потока данных. Эти машины не позволяли выполнять несколько экземпляров одних и тех же подпрограмм одновременно, потому что простые теги не могли различать их. Дизайн, использующий Память с адресацией по содержимому называются машинами динамического потока данных Арвинд. Они используют теги в памяти для облегчения параллелизма. Данные обтекают компьютер через компоненты компьютера. Он поступает с устройств ввода и может выходить через устройства вывода (принтер и т. Д.).

Параллелизм

Сеть потока данных - это сеть одновременно выполняющихся процессов или автоматов, которые могут обмениваться данными, отправляя данные по каналы (видеть передача сообщений.)

В Технологические сети Кан, названный в честь Жиль Кан, процессы определенный. Это означает, что каждый детерминированный процесс вычисляет непрерывная функция от входных потоков к выходным потокам, и что сеть определенных процессов сама определена, таким образом вычисляя непрерывную функцию. Это означает, что поведение таких сетей можно описать набором рекурсивных уравнений, которые можно решить с помощью теория неподвижной точки. Движение и преобразование данных представлено серией фигур и линий.

Смотрите также

Рекомендации

внешняя ссылка

Составные потоки данных