文档介绍:第卷第期重庆邮电学院学报自然科学版
!" # ! " $%&’!"!(%’#
年月
)**+ !) ,%-./0&%123%/456/47/689.:6;<%1=%:;:0/>?9&9@%AA-/******@0;6%/:!(0;-.0&******@69/***@9" C9@’)**+
文章编号
#!""#$%&’#!(""%""&$")%%$"#!!
下进程迁移机制的研究
D6/-E "
邓通!!李毅(!张建兵!!牟俊!
重庆邮电学院重庆电子科技大学四川成都
!!* " #"""&%#(* " &!""%#$
摘要针对下可执行文件的加载执行过程采用先产生原进程整体构架再恢复断点信息的方法实
! # +,-./ 0+1 # # #
现了中断进程的恢复$该方法有内核改动小#可扩展性较大等优点#对集群及分布式应用具有一定参考价值$
关键词进程迁移进程恢复
# % %+,-./
中图分类号文献标识码
#234!&*5’!! #6
断时候的进程状态在中每个进程的状态
引言% +,-./ "
*! ! 抽象为进程的上下文环境"包括用户上下文(寄存器
进程迁移是指将一个正在运行的作业进程从系上下文(系统上下文"这些都是应该恢复的%
统的一个结点迁移到另一个结点"迁移后的进程能其中应该恢复的系统上下文包括进程描述符(
从原来进程的断点处继续往下执行"其行为和结果内存描述符等内核数据"但是这些内容是没有必要
与没有发生迁移一样根据这一特性集群系统就
% " 完全按原样恢复的%因为恢复这些系统上下文的目
能够把重负载节点的进程迁移到轻负载节点上执的在于保持进程与文件的映射关系以及获得运行所
行动态地改变系统的负载分布高效地完成大吞吐
" " 需的内存资源"这可以通过让系统重新加载原可执
量的计算因此进程迁移成为提高集群系统整体
% " 行文件来自动完成"并不是要恢复到原来的系统上
性能和增强系统容错能力的关键技术之一%
下文才能做得到%而进程运行中打开的文件描述符
目前"国内外对进程迁移已经做了大量的工
等则要单独恢复%
作&!$4’并在此基础上实现了相应的集群系统如
" % 恢复用户上下文和寄存器上下文目的在于保证
&!’&(’等系统是依赖于原
78-98: "787;<=> "78-9,-<
迁移进程与原进程中断时候数据的一致性"这就要
有低层操作系统"附加一定的控制软件来达到集群
恢复进程断点处全局变量和局部静态变量的值(堆
协同工作的效果"它们多采用让应用程序在编译时
栈的内容以及寄存器的内容于是整个恢复过程
链接相关的检查点库的方法"来使得应用程序具备% "
可以采用重新加载原可执行文件先产生原进程整
进程迁移的能力%这种方法无需修改源代码"不用"
体框架再对断点数据进行恢复的策略
从低层重新开发自己专用的操作系统"就可维持原" %
有操作系统的通用性和一致性而&4’和可执行文件的格式及执行过程
% ?***@ABC "D !*!!FDG
等系统主要提供内核级的支持通过内核原
AE:,F< " 一个进程的整体构架简单说就是可执行文件的
语访问进程状态设立检查点来透明迁移应用进程
"