第4章处理机调度与死锁重点关注了抢占式调度,也称为可剥夺式调度,这是操作系统中一种动态调整处理器分配策略的方式。在这样的调度模型中,系统可以根据特定的规则暂停当前执行的进程,将其处理机分配给优先级更高的进程或者符合特定条件的进程,如优先级较高的任务、响应时间短的任务或者按照时间片轮转的进程。
抢占原则主要有三种:
1. 优先权原则:高优先级的进程可以随时打断低优先级的进程,获取处理器资源。这有助于确保紧急或重要的任务得到及时处理。
2. 短作业优先原则:在多道程序环境下,短小的作业能够更快完成,从而提高系统整体效率,避免资源长期闲置。
3. 时间片原则:按预先设定的时间片长度轮转执行,即使在一个进程执行了一段时间后,也会让出处理机,给予其他进程执行机会,实现公平性。
在讨论作业时,我们引入了几个关键概念:
- 作业:用户提交给系统的计算任务,由程序、数据和作业说明书组成,可能包含多个步骤,相互依赖。
- 作业说明书:详细描述了作业的属性和需求,包括用户信息、作业名称、优先级、资源要求等,使用作业控制语言(JCL)编写。
- 作业控制块(JCB):存储作业相关信息的系统数据结构,用于管理作业生命周期,包括状态、资源请求等。
- CPU繁忙型作业:需要大量CPU处理的作业,如科学计算。
- I/O繁忙型作业:CPU大部分时间用于等待I/O操作,如事务处理。
作业管理是操作系统的基础功能,虽然在个人电脑和终端用户环境中,人们可能较少直接接触到作业的概念,但在大型机和服务器上,它至关重要。作业的建立涉及将程序和数据写入外存并创建JCB,JCB的存在标志着作业的生命周期,作业完成后,JCB会被撤销并释放系统资源。
JCB包含两个主要部分:描述信息,如作业名称、状态和优先级;资源要求,包括运行时间、结束时间、内存需求、外设资源等。这些信息对系统调度和资源分配至关重要,确保了作业能高效、有序地在系统中运行。理解抢占式调度和作业管理对于理解和优化操作系统性能至关重要。