●●● ●●●● ●●●●● 4.2分布式处理机分配算法 ●●●● ●●0●● ●●●0 ●●●● 新进程的产生和处理机的分配: 当一个运行中的进程决定创建一个子进程时,产生了 下列工作: 在有些情况下,创建进程是由系统的命令解释程序 (即she)来完成的。它为用户执行其指定的命 令所对应的程序。 ●而在另一些情况下,用户进程本身也可以创建一个 或者多个子进程,以获得较高的系统性能。 ●对新进程必须考虑分配到哪个处理器上运行
4.2分布式处理机分配算法 新进程的产生和处理机的分配: ⚫ 当一个运行中的进程决定创建一个子进程时,产生了 下列工作: ⚫ 在有些情况下,创建进程是由系统的命令解释程序 (即shell)来完成的。它为用户执行其指定的命 令所对应的程序。 ⚫ 而在另一些情况下,用户进程本身也可以创建一个 或者多个子进程,以获得较高的系统性能。 ⚫ 对新进程必须考虑分配到哪个处理器上运行
●●● ●●●● ●●●●● ●●●● 4.2分布式处理机分配算法 ●●0●● ●●●0 ●●●● 处理机分配策略可以分为两大类: 1)非迁移的 2)可迁移的 第一类是非迁移的( nonmigratory) ●在非迁移策略中,当创建一个进程时,系统就决定 它被分配到哪台处理机上。一旦一个进程被分配到 台机器上,那么,它就在那台机器上运行,一直 到终止,不管这台处理机的负载是多么的重,而别 的处理机是多么的空闲,它都不能迁移到别的处理 机上运行
4.2分布式处理机分配算法 处理机分配策略可以分为两大类: 1)非迁移的 2)可迁移的 ⚫ 第一类是非迁移的(nonmigratory) ⚫ 在非迁移策略中,当创建一个进程时,系统就决定 它被分配到哪台处理机上。一旦一个进程被分配到 一台机器上,那么,它就在那台机器上运行,一直 到终止,不管这台处理机的负载是多么的重,而别 的处理机是多么的空闲,它都不能迁移到别的处理 机上运行
●●● ●●●● ●●●●● ●●●● 4.2分布式处理机分配算法 ●●0●● ●●●0 第二类是可迁移的( migratory) °对于可迁移策略来说,一个进程即使已经被分配到 台处理机上并已经运行了一段时间,如果其负载 变重了,它也可以动态地迁移到其它轻负载的处理 机上继续运行。 ●虽然可迁移策略可以使系统达到良好的负载平衡, 但实现起来却异常复杂
4.2分布式处理机分配算法 ⚫ 第二类是可迁移的(migratory) ⚫ 对于可迁移策略来说,一个进程即使已经被分配到 一台处理机上并已经运行了一段时间,如果其负载 变重了,它也可以动态地迁移到其它轻负载的处理 机上继续运行。 ⚫ 虽然可迁移策略可以使系统达到良好的负载平衡, 但实现起来却异常复杂
●●● ●●●● ●●●●● ●●●● 4.2分布式处理机分配算法 ●●0●● ●●●0 ●●●● ●处理机分配算法必须尽可能优化。否则,我们 完全可以随机地或按数字顺序来分配处理机。 不同系统的优化内容是不一样的 优化目标1:提高处理机利用率 优化目标2:最小化平均响应时间
4.2分布式处理机分配算法 ⚫ 处理机分配算法必须尽可能优化。否则,我们 完全可以随机地或按数字顺序来分配处理机。 ⚫ 不同系统的优化内容是不一样的 ⚫ 优化目标1:提高处理机利用率 ⚫ 优化目标2:最小化平均响应时间
●●● ●●●● ●●●●● ●●●● 4.2分布式处理机分配算法 ●●0●● ●●●● ●●●● ●第一个优化目标就是: 尽量提高处理机的利用率 处理机的利用率 执行用户工作的周期数/小时 执行用户的周期数/小时+dk周期数/小时 让处理机在每个小时内执行用户工作的周期数尽 可能地多。 ●换句话说,要尽量减少空闲处理机周期数
4.2分布式处理机分配算法 ⚫ 第一个优化目标就是: 尽量提高处理机的利用率 ⚫ 让处理机在每个小时内执行用户工作的周期数尽 可能地多。 ⚫ 换句话说,要尽量减少空闲处理机周期数。 执行用户的周期数 小时 周期数 小时 执行用户工作的周期数 小时 处理机的利用率 / idle / / + =