多道程序设计环境下的作业调度算法分析

需积分: 11 5 下载量 151 浏览量 更新于2024-08-20 收藏 1.22MB PPT 举报
"调度算法例题涉及操作系统中的进程管理和设备管理。文件系统方面提到了磁盘容量、盘块管理和成组链接法。" 在操作系统中,调度算法是用于决定哪个进程或作业应该获得CPU执行权的关键机制。在这个例题中,我们有三个作业(JOB1, JOB2, JOB3)在单CPU和两个I/O设备(I1, I2)的环境中运行。每个作业都有特定的CPU和I/O操作顺序及时间需求。作业的优先级也是调度的一个重要因素,JOB1优先级最高,JOB2次之,JOB3最低。 对于问题(1),我们需要计算每个作业从投入到完成所需的时间。考虑作业之间的交互和优先级抢占。由于CPU、I1和I2可以并行工作,且高优先级作业可以抢占CPU,我们可以得到以下结果: - JOB1: 需要110ms(I2+CPU+I1+CPU+I2) - JOB2: 需要90ms(I1+CPU+I2) - JOB3: 需要110ms(CPU+I1+CPU+I1) 对于问题(2),CPU的利用率计算公式是(总CPU时间 - 总I/O时间)/ 总时间。在这里,CPU利用率是: - CPU利用率:(110ms - (JOB1+JOB2+JOB3的I/O时间之和))/ 110ms = (110 - 30 - 20 - 20) / 110 = 40ms / 110ms = 36.4% 对于问题(3),I/O设备利用率的计算方式类似,但我们要分别计算I1和I2的利用率: - I1的利用率:(110ms - (JOB1+JOB2+JOB3的CPU时间之和))/ 110ms = (110 - 30 - 20 - 30 - 10) / 110 = 20ms / 110ms = 18.2% - I2的利用率:(110ms - (JOB1+JOB2的I1时间 + JOB3的I1时间))/ 110ms = (110 - 30 - 10 - 10) / 110 = 60ms / 110ms = 54.5% 文件系统部分,讨论了磁盘容量和成组链接法。520MB的磁盘,前4MB和后10MB分别用于特殊用途,剩下的506MB用作存储。采用成组链接法,每个组包含100个盘块,总共有5182个组,最后一个组只有44个盘块。这种结构有助于管理未使用的磁盘空间。 至于磁盘优化的问题,虽然没有提供完整的信息,但一般涉及到磁盘的旋转延迟和磁头移动时间。当处理程序顺序读取同一磁道上的10个逻辑记录时,我们需要计算从读取第一个记录到处理完所有记录的总时间,考虑读取时间和处理时间。 总结来说,这个资源涵盖了操作系统中的调度算法,特别是抢占式优先级调度,以及文件系统的磁盘管理,包括成组链接法和磁盘性能优化。这些知识点对于理解操作系统的运作和性能优化至关重要。