论文部分内容阅读
进程迁移系统能提高分布式系统的负载平衡性和可靠性,但在这一研究领域,国外处于领先地位。由于进程迁移几乎都是在各商用操作系统中实现的,其源代码不公开,所以很难得到广泛使用。并且现有的进程迁移系统还不尽如人意——迁移算法主要采用了效率较低的Total-copy算法、网络通信量过重等。另一方面,对于最大的开放源代码的操作系统Linux来说,在其内核中也还没有正式发布具有进程迁移功能的模块。因此,研究分布式系统中的进程迁移,以及在Linux上的实现,将为我国的信息化进程提供坚实的保证,具有很强的社会意义和市场价值。本论文分为两大部分:分布式系统中的进程迁移理论研究;进程迁移理论在Linux上的实现。在整个理论分析的部分,主要是围绕着两个问题进行展开论述:(1)如何迁移,使得进程能够在新主机上正确运行,即进程迁移算法;(2)迁移机制,即由哪台主机(源主机)选择哪个进程向哪台主机迁移(目的主机)。本文基于进程迁移的三个条件提出的进程迁移算法,最大程度地将进程状态迁移和进程的运行并行起来,从而提高了迁移速度,网络通信量也较小,而且也没有对源节点的残余依赖性。在对进程迁移机制的理论分析中,采取了利于提高系统性能的迁移机制,并与现有的经典迁移系统进行了比较。在Linux上实现迁移系统时,与通常的项目设计一样,首先规划出了整个迁移系统的模块划分:MigrateOut模块、MigrateIn模块、Selecter模块和LoadManager模块,并给出了各模块的实现流程图。实际上,实现部分也分为对迁移算法的实现和对迁移机制的实现。迁移算法的实现,也就是对MigrateOut模块和MigrateIn模块的实现;迁移机制的实现,也就是对Selecter模块和LoadManager模块的实现,实现部分会涉及到对Linux内核的编程。论文的最后是测试与结果分析部分。通过对进程迁移系统和同类产品的功能和性能测试比较,得出本进程迁移系统的适用范围,并证明本进程迁移算法和整个迁移系统都具有较高的性能。