首页 理论教育 虚拟进程移动策略:智能运输系统设计

虚拟进程移动策略:智能运输系统设计

时间:2023-10-14 理论教育 版权反馈
【摘要】:一般来说,合乎逻辑的选择是将数量相对适中的静态实体表示成实际进程,并按一对一的原则,把它们分配给并行处理试验台上的处理器,而用虚拟进程表示移动实体。一个虚拟进程在必要时会在处理器之间移动,它的计算需求会由其相对应的静态节点的主机来执行。这种策略被称之为虚拟进程移动,实际上我们已在第4章和第6章讨论过这种策略。然后,相应的虚拟进程及其所有参数会迁移到移动实体再次出现的静态节点处。

虚拟进程移动策略:智能运输系统设计

一般来说,合乎逻辑的选择是将数量相对适中的静态实体表示成实际进程,并按一对一的原则,把它们分配给并行处理试验台上的处理器,而用虚拟进程表示移动实体。一个静止节点代表一个位于特殊地理位置的实体。一个虚拟进程在必要时会在处理器之间移动,它的计算需求会由其相对应的静态节点的主机来执行。根据定义,一个虚拟进程不能与某个处理器永久相连,有时它会与一个静态节点的处理器相连,执行其计算需求,并暂时给它分配一个实际进程状态。这种策略被称之为虚拟进程移动(VPM),实际上我们已在第4章和第6章讨论过这种策略。在第5章和第7章中,我们对VPM策略进行了适当的修改,用UNIX进程表示静态和移动实体,而UNIX进程是可以在有任意数量处理器的试验台上运行的。因此,在第5章和第7章中,需要的处理器数量不一定等于静态实体的数量,这与第4章和第6章的情况不同。虽然前文中作过描述,但本章仍会将VPM作为模拟和仿真ITS的一般方法做更详细地介绍。处理器之间相连的结构与静态实体间的拓扑结构相同,这种结构一开始就被初始化,并在整个仿真过程中保持不变。

VPM中的虚拟进程就像一个操作系统中的“索引”,然而,它并不像“索引”那样包含代码、存储单元、堆栈指示器以及程序计数器,一个虚拟进程只包含执行程序所必需的基本参数,而具体是哪些参数是由应用程序决定的。举例来说,在模拟和仿真IVHS时,移动车辆的参数包括车牌、模式、制造商、现行速度、设计速度、位置、方向、起点和终点。当一个移动实体位于一个静态节点时,它出现在那个节点,就在那里显示为一个实际进程,由该节点的主机执行并计算。移动实体可以利用静态节点和它自己所包含的相关信息来决定自己接下来的行动,其中就可能包括移动到另一个静态节点的决策。然后,相应的虚拟进程及其所有参数会迁移到移动实体再次出现的静态节点处。因此,一个移动实体的行为是完全独立的,不受所在的静态节点以及在相同的静态节点驻留的其他虚拟进程的影响。而且,在任何时刻,都可能会有一个或多个虚拟进程在一个静态节点处停留,争夺计算和通信资源。因此,可能需要利用调度程序来给各进程安排计算和通信设备。静态进程和虚拟进程之间的通信只需要通过复制缓冲区就可以很容易地实现。

图8.1描述了一个有三个静态实体的简单的ITS设计,用静态进程SP-1、SP-2、SP-3来表示。仿真包括以下三个处理器:处理器1、处理器2和处理器3。在给定的时刻,虚拟进程VP-1~VP-5都停留在图8.1所示的三个处理器上,而VP-6从处理器2迁移到处理器1。在迁移过程中,首先终止对应于停留在处理器2处的VP-6的实际进程,其基本参数被压缩到一条消息中,然后这条消息又被传递给处理器1,并在处理器2处解码,最后,在处理器2处形成了与VP-6相对应的新的实际进程。每个处理器都必须执行静态进程、至少一个虚拟进程、调度程序以及通信基元。我们通过一项严密的测试发现了VPM的两个重要特征:第一,一般来说,对于一个从静态节点A移动到静态节点B的移动实体来说,A点和B点必须是直接连通的。虽然这样也许可以降低系统复杂程度,但是也有可能产生更复杂的迁移。第二,在任意时刻,一个静态节点处的移动实体数量都受到操作系统允许处理的最大进程数的限制。(www.xing528.com)

978-7-111-37676-7-Chapter08-1.jpg

图8.1 虚拟进程移动

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈