清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 系统必须进行进程上下文切换以建立与占用处理机 进程相适应的执行环境。 (4)线程调度。 上述4级调度的关系如图4.1。 在多道批处理系统中,存在着作业调度和进程调度。 但是,在分时系统和实时系统中,一般不存在作业 调度,而只有进程调度、交换调度和线程调度。这 是因为在分时系统和实时系统中,为了缩短响应时 间或为了满足用户需求的截止时间,作业不是建立 在外存,而是直接建立在内存中。在这些系统中, 旦用户和系统的交互开始,用户马上要进行控制。 因而,这些系统中没有作业提交状态和后备状态。 它们的输入信息经过终端缓冲区为系统所接收,或 者立即处理,或者经交换调度暂存外存中
系统必须进行进程上下文切换以建立与占用处理机 进程相适应的执行环境。 (4) 线程调度。 上述4级调度的关系如图4.1。 在多道批处理系统中,存在着作业调度和进程调度。 但是,在分时系统和实时系统中,一般不存在作业 调度,而只有进程调度、交换调度和线程调度。这 是因为在分时系统和实时系统中,为了缩短响应时 间或为了满足用户需求的截止时间,作业不是建立 在外存,而是直接建立在内存中。在这些系统中, 一旦用户和系统的交互开始,用户马上要进行控制。 因而,这些系统中没有作业提交状态和后备状态。 它们的输入信息经过终端缓冲区为系统所接收,或 者立即处理,或者经交换调度暂存外存中
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 413作业与进程的关系 作业可被看作是用户向计算机提交任务的任务实体, 例如一次计算、一个控制过程等。反过来,进程则 是计算机为了完成用户任务实体而设置的执行实体 是系统分配资源的基本单位。显然,计算机要完成 个任务实体,必须要有一个以上的执行实体。也 就是说,一个作业总是由一个以上的多个进程组成 的。那么,作业怎样分解为进程呢?首先,系统必 须为一个作业创建一个根进程。然后,在执行作业 控制语句时,根据任务要求,系统或根进程为其创 建相应的子进程,然后,为各子进程分配资源和调 度各子进程执行以完成作业要求的任务
4.1.3 作业与进程的关系 作业可被看作是用户向计算机提交任务的任务实体, 例如一次计算、一个控制过程等。反过来,进程则 是计算机为了完成用户任务实体而设置的执行实体, 是系统分配资源的基本单位。显然,计算机要完成 一个任务实体,必须要有一个以上的执行实体。也 就是说,一个作业总是由一个以上的多个进程组成 的。那么,作业怎样分解为进程呢?首先,系统必 须为一个作业创建一个根进程。然后,在执行作业 控制语句时,根据任务要求,系统或根进程为其创 建相应的子进程,然后,为各子进程分配资源和调 度各子进程执行以完成作业要求的任务
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 42作业调度 作业调度主要是完成作业从后备状态到执行状态的 转变,以及从执行状态到完成状态的转变。本节主 要介绍作业调度的功能及调度性能的评价方法。 42.1作业调度功能 (1)记录系统中各作业的状况。作业调度程序要能挑 选出一个作业投入执行,并且在执行中对其进行管 理,它就必须掌握作业在各个状态,包括执行阶段 的有关情况。通常,系统为每个作业建立一个作业 控制表JCB记录这些有关信息。系统通过JCB而感 知作业的存在。系统在作业进入后备状态时为该作 业建立它的JCB,从而使得该作业可被作业调度程 序感知。当该作业执行完毕进入完成状态之后,系 统又撤消其JCB而释放有关资源并撤消该作业
4.2 作 业 调 度 作业调度主要是完成作业从后备状态到执行状态的 转变,以及从执行状态到完成状态的转变。本节主 要介绍作业调度的功能及调度性能的评价方法。 4.2.1 作业调度功能 (1) 记录系统中各作业的状况。作业调度程序要能挑 选出一个作业投入执行,并且在执行中对其进行管 理,它就必须掌握作业在各个状态,包括执行阶段 的有关情况。通常,系统为每个作业建立一个作业 控制表JCB记录这些有关信息。系统通过JCB而感 知作业的存在。系统在作业进入后备状态时为该作 业建立它的JCB,从而使得该作业可被作业调度程 序感知。当该作业执行完毕进入完成状态之后,系 统又撤消其JCB而释放有关资源并撤消该作业
清华大学出版社 000000 对于不同的批处理系统,其JCB的内容也有所不同。 图42给出了JCB的主要内容。它包括作业名、作业 类型、资源要求、当前状态、资源使用情况以及该 作业的优先级等。 作业名 作业类型 资源要求 资源使用情况 优先级(数) 当前状态 其他 图42作业控制块JCB
对于不同的批处理系统,其JCB的内容也有所不同。 图4.2给出了JCB的主要内容。它包括作业名、作业 类型、资源要求、当前状态、资源使用情况以及该 作业的优先级等。 图4.2 作业控制块JCB 作业名 作业类型 资源要求 资源使用情况 优先级(数) 当前状态 其他
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 其中,作业名由用户提供并由系统将其转换为系统 可识别的作业标识符。作业类型指该作业属于计算 型(要求CPU时间多)还是管理型(要求输入/输 出量大),或图形设计型(要求高速图形显示)等 而资源要求则包括:该作业估计执行时间、要求最 迟完成时间、要求的内存量和外存量、要求的外设 类型及台数以及要求的软件支持工具库函数等。资 源要求均由用户提供。资源使用情况包括有:作业 进入系统时间、开始执行时间、已执行时间、内存 地址、外设台数等。优先级则被用来决定该作业的 调度次序。优先级既可以由用户给定,也可以由系 统动态计算产生。状态是指该作业当前所处的状态。 显然,只有当作业处于后备状态时,该作业才可以 被调度
其中,作业名由用户提供并由系统将其转换为系统 可识别的作业标识符。作业类型指该作业属于计算 型(要求CPU时间多)还是管理型(要求输入/输 出量大),或图形设计型(要求高速图形显示)等。 而资源要求则包括:该作业估计执行时间、要求最 迟完成时间、要求的内存量和外存量、要求的外设 类型及台数以及要求的软件支持工具库函数等。资 源要求均由用户提供。资源使用情况包括有:作业 进入系统时间、开始执行时间、已执行时间、内存 地址、外设台数等。优先级则被用来决定该作业的 调度次序。优先级既可以由用户给定,也可以由系 统动态计算产生。状态是指该作业当前所处的状态。 显然,只有当作业处于后备状态时,该作业才可以 被调度