|||
现代计算机程序的动态结构模式是一种“单轨线形运转”的结构模式,就象平流的流水,虽然有分岔(多线程)、回转(循环或迭代)、梯级(数据缓冲驱动)等运行机制,但所有这些运行机制,都是在一个一维的流线上的运行,并行机制也只不过是有多条同时做一维流动且相互关联的流线而已。
现在的程序,就象我们写的文章、拍的电影,总只能有一条主线,当我们遇到“花开两朵”的情况时,总是不得不“各表一枝”,即便是画中画同时进行,也只能做到“一画一表”,不能取得“一箭双雕”的效果。
自然界中,除了“平流运动”之外,还存在许多“立体流运动”的方式——一个流动,同时在多个运动空间维度上产生效果,如龙卷风,漩涡等。
软件程序如何能够取得类似的“多维运动空间运动”的效果呢?
我们首先要对软件的运行环境实现多维化。
软件的运行环境就是应用的问题域,应用问题域的问题本来是多维关联的,不是线形的一维关联。如果一个程序的运行过程,能够同时在解决应用问题域不同维度上的问题产生效果的话,这样的程序,就能算是立体程序了。
要设计立体的程序,当然要建立立体的数字逻辑空间,要进行立体数字逻辑模型。
立体逻辑程序并不一定依赖并行的硬件架构,而更依赖是否能建立立体的应用逻辑模型。即使拥有并行的硬件架构,要实现立体的程序,仍然需要能同时在各个运行维度产生效果的机制。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-21 20:51
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社