中科院讲义分布式操作系统进程迁移.pptVIP

中科院讲义分布式操作系统进程迁移.ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中科院讲义分布式操作系统进程迁移.ppt

进程迁移 进程迁移就是将一个进程的状态,从一台机器转移到另一台上,从而使该进程能在目标机上执行。这个概念主要来自于对大量互连系统间负载平衡方法的研究,但其应用已超出了这个领域。 进程迁移 过去,在负载分配方面仅有很少的是基于真正的进程迁移,包括在一台机器上抢占一个进程,以后在另一台机器上重新激活它。经验表明抢占进程的迁移是可能的,但它比所预想的更复杂和更难管理,这就使一些人认为进程迁移并不实际可行。例如有如下叙述: “实际上,迁移运行进程理论上很平常,但实际上几乎不可能。” 进程迁移 进程迁移由于许多原因在分布式操作系统中很重要,包括下列原因: ⑴负载共享。 通过将进程从负载较重的系统迁移到负载较轻的系统,系统负载就可以平衡,从而提高整体执行效率。经验表明执行效率的提高是可能的,但要注意设计负载平衡算法。一般分布式系统实现平衡所需的通信量越多,执行效率就越糟。 进程迁移 ⑵通信的执行。 相互间紧密作用的进程可以移到同一节点,以减少他们作用期间的通信耗费。同样,一个进程对比它自身要大的某一文件或文件集进行数据分析时,将进程移到数据所在处比移动数据要好些。 进程迁移 ⑶可获得性。 运行时间较长的进程在出现错误时可能需要迁移,而这些错误事先可以预知,如果操作系统提供这种通知的话,一个想继续的进程可以迁移到另外的系统,或者确信它能在以后某一时刻在当前系统中重新开始。 ⑷利用特定资源。 一个进程可以迁移,以利用一特定节点上独有的硬件或软件功能。 进程迁移机制 在设计一个进程迁移机制时要考虑许多问题,其中包括: ⑴由谁来激发迁移? ⑵进程的哪一部分被迁移? ⑶如何处理未完成的消息和信号? 进程迁移的激发 由谁激发迁移取决于迁移机制的目标。若其目标在于负载平衡,那么操作系统中掌管系统负载平衡的组件通常决定什么时候进行迁移。该组件负责抢占或通知将被迁移的进程,为决定进程迁移到哪里,组件需要同其他类似组件通信,以掌握其他系统的负载情况。 进程迁移的激发 若目的在于获得特定资源,那么一个进程需要自己迁移。对后一种情况,进程必须了解分布式系统的分布情况,对前一种情况,整个迁移作用以及多系统的存在,对进程可以是透明的。 迁移什么 当一个进程被迁移时,必须在源系统上破坏该进程,并在目标系统上建立它。这是进程的移动,并不是过程的复制。因此,进程映像,至少包括进程控制块,必须迁移。另外,这个进程与其他进程间的任何链接,例如那些附带的消息和信号,必须更新。如下图所示。 迁移什么 迁移什么 进程3从机器1迁移到机器2上,该进程包含所有链接标识符(由小写字母表示)保持原状,由操作系统负责迁移进程控制块和更新链接映射。进程从一台机器移到另一台机器对迁移进程及其通信进程来说都是不可见的。 迁移什么 进程控制块的移动是很简单的。从执行角度看,困难在于进程的地址空间和进程打开的文件。 假设进程地址空间使用分段或分页虚拟存储策略,有两种解决方法: ⑴迁移时传送整个地址空间。 这当然是最简单的方法。在原来的系统中再也找不到该进程任何相关信息。但是如果进程并不地址空间中的大部分,那么这种方法就可能太昂贵了,显然没有必要。 迁移什么 ⑵仅传送那些在主存中的地址空间部分,虚拟空间中的段仅在需要时传送,这可使传送的数据量最少。但是,这就需要源机器在进程生存期间不断修改段表或页表。 进程迁移 如果进程并不使用太多的非内存地址空间,例如,进程仅暂时到另一台机器上对一个文件操作,然后返回,那么第二种方案比较好。另一方面如果要逐渐访问那些不在内存的地址空间,那么零碎的传送地址空间的各段,就没有第一方案有效。 迁移什么 许多情况下,不可能预先知道是否需要较多的非内存地址空间 迁移什么 迁移什么 进程迁移 * *

文档评论(0)

wuyouwulu + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档