网络工程师-操作系统之作业管理(第四天)
1、作业状态与作业管理
(1)、概念:用户一次解题过程中要求计算机所做工作的集合
(2)、执行步骤:编辑→→编译→→链接→→运行
2、作业调度
(1)、作业调度算法
-
先来先服务法:按照先来后到的调度算法,不可剥夺,当一个短作业和一个长作业结合在一起的时候,会导致短作业执行周期延长,这种不适合于短作业调度。
-
时间片轮转法:将CPU划分为很多个时间片,每个时间片为一个作业服务,不管有没有完成,只要时间片一到,立即结束执行,释放CPU,为下一个作业服务。
-
短作业优先法:先估算作业执行时间,将执行时间最短的作业优先调度执行,但不利于长作业和紧急作业执行,并且需要估算时间。
-
最高优先权优先法:给每一个作业赋予优先权值,根据权值优先调度。
-
高响应比优先法:考虑了作业执行时间和等待时间,即有利于短作业调度,又不会使长作业等待太长。
(2)、作业调度作用
-
(1)按照某种调度算法从后备作业队列中选取作业。
-
(2)为被选中的作业分配主存和外设资源。
-
(3)为选中的作业开始运行做好一切准备工作。如:修改作业状态为运行态,为运行作业创建进程,构造和填写作业表。
-
(4)在作业运行完成或由于某种原因需要撤离系统时,还要完成作业的善后处理工作:包括回收分给它的全部资源,为输出必要信息编制输出文件,撤销该作业的全部进程和作业控制块等,最终将其从现行作业队列中删除。
(3)、作业调度状态
-
(1)提交状态:一个作业经过输入设备进入到输入井 ,系统为其建立作业控制块。这时的作业处于提交状态。
-
(2)后备状态:系统将已进入输入井的作业插入到输入井后备队列中,等待作业调度程序的调度运行,这时的作业处于后备状态。
-
(3)运行状态:处于后备状态的作业被作业调度程序选中进入主存,系统就为它分配必要的资源,建立相应的进程,这时处于运行状态。
-
(4)完成状态:作业完成其全部运行并释放其所占全部资源而正常结束或异常终止时,此时就处在完成状态。此时作业调度程序对该作业进行一系列善后处理,并退出系统。
-
3.影响因素
-
公平性 均衡使用资源 提高系统吞吐量 平衡系统和用户需求
3、作业输入
(1)、作业控制语言
-
①作业控制语言的功能:
-
作业的提交
-
控制作业和作业步的执行
-
各种软硬件资源的使用
-
-
②作业控制语言的要求:
-
描述用户作业的基本情况(含用户名、作业名、使用的编程语言名、允许的最大处理时间等)
-
描述资源需求(含需求的主存大小、外设种类及台数、处理器优先级、所需运行时间、需求库函数等)
-
描述用户对作业执行的控制要求(作业的控制方式、作业步的执行顺序、作业的异常处理等)
-
(2)、作业控制块JCB(类比之前的PCB\TCB)
-
作业控制块JCB是批处理作业存在的标志(PCB是进程在系统中存在的标志)。
-
JCB包含作业名、作业状态、作业类别、作业优先级、作业控制方式、资源需求量、进入系统时间、开始运行时间、运行时间、作业完成时间、所需主存地址和外设种类及台数。
-
JCB建立→→使用→→撤销
-
作业输入到输入井时建立,作业完成后有系统输出程序撤销,作业随即也撤销。
-
所有作业的JCB构成一个作业表放于辅存的固定区域中。
-
系统输入程序、作业调度程序、系统输出程序都需要访问作业表,因而存在互斥问题。
(3)、作业输入步骤
批处理作业输入是将作业的源程序、初始数据、作业控制说明书通过输入设备输入到辅存并完成初始化的过程。
4、作业控制
(1)、批处理作业(脱机作业)的管理
批处理作业=源程序+初始数据+作业控制说明书
- 作业步的处理
-
(1)建立子进程;
-
(2)为该子进程申请系统资源和外设资源等;
-
(3)访问该作业的作业控制块;
-
(4)子进程执行结束并释放其占有的全部资源;
-
(5)撤销子进程等。
-
- 批处理作业的撤销:
-
(1)报告用户作业是正常终止还是异常终止,若是正常终止,则把结果输出;
-
(2)回收作业占据的全部资源,包括主存空间、外设及打开的数据文件等;
-
(3)释放该作业的作业控制块;
-
(4)注消该作业。
-
(2)、交互式作业(联机作业)的管理
- 交互式作业的控制命令:
-
(1)作业控制命令:包括作业程序的建立、修改、编译、链接和运行等。
-
(2)文件的各种操作命令:该类命令实现对用户文件和目录的控制,包括新建、修改、删除、显示和输出等。
-
(3)目录操作命令:该类命令实现对用户目录的控制,包括新建目录、删除目录和修改目录的权限等。
-
(4)资源申请命令:该类命令包括对各种外设的使用和重定向。
-