4 ms·
Dataflow means a language or machine who's execution is driven by the availability of data. In a dataflow computational model you do not have the concept of me
by yvdriess 15y ago
Dataflow means a language or machine who's execution is driven by the availability of data.
In a dataflow computational model you do not have the concept of memory.
In a Von Neumann architecture (viz. your current CPU) execution is determined by the previous instruction. Data is stored in a global, randomly accessible memory space.
Synchronizing two data streams in dataflow is just a matter of having an instruction with two inputs. The very semantics of your machine tells you the node's instruction will only trigger when both its inputs are available.
Critical systems with the problems you described are often written in dataflow languages for exactly these reasons. Citing wikipedia:
Lustre is a formally defined, declarative, and synchronous dataflow programming language for programming reactive systems. [...] It is now used for critical control software in aircraft, helicopters, and nuclear power plants.
- scott_s 15y agoDataflow hardware is not the only realization of the dataflow programming model.