第3章 作业管理_免费下载.ppt_第1页
第3章 作业管理_免费下载.ppt_第2页
第3章 作业管理_免费下载.ppt_第3页
第3章 作业管理_免费下载.ppt_第4页
第3章 作业管理_免费下载.ppt_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、操作系统第3章 作业管理,浙江工业大学软件学院 王奔,第三章作业管理,3.1 作业与作业步 3.2 用户界面 3.3 交互式作业与批处理作业 3.4 作业调度,本章学习目标,对用户来说,他们所关心的不是操作系统的内部实现细节,而是操作系统的外部特性。以用户观点研究操作系统,要求操作系统能为用户提供更多的服务,以方便用户对计算机的使用,这就是操作系统的作业管理功能。 本章学习目标: 1.掌握作业与作业管理概念。 2.了解操作系统的用户界面。 3.领会作业调度与作业控制。,3.1 作业与作业步,作业:用户在一次计算过程中,或者一次事务处理过程中,要求计算机系统所做工作的总称。 作业步:处理若干个作

2、业时所经历的步骤 作业由程序、数据和作业说明书构成。 用户怎样把他的作业提交给操作系统,操作系统又是怎样组织、调度它们运行的,这些都属于作业管理范畴。 作业管理的主要任务是:作业调度和作业控制。,典型的作业控制过程,程序的“编辑输入”、 “编译”、“连接装配”、“运行”、“输出”过程。 例如,用户用C语言编写了一个C程序(取名:user),他将通过计算机系统完成下图的所示工作:,编辑:由控制台编辑输入C源程序(user.c)存到磁盘上; 编译:对C源程序进行编译,得到相应的目标程序(user.obj)存到磁盘上; 链接:对目标程序连接装配,得到一个可执行的程序(user.exe)存到磁盘上;

3、执行:执行可执行程序,并输出结果。 以上几个步骤的总和就是一个作业, 其中每个步骤就称为一个作业步。,一个作业一般可分成若干个作业步,各作业步之间相对独立,又相互关联。 作业步之间的关系表现为: (1)前一个作业步往往产生下一个作业步运行时需要的数据(文件)。 用户用C语言编写的源程序,通过编辑形成一个USER.C源程序,它是第二个作业步编译的对象,而编译产生的目标模块(USER.OBJ)则是第三个作业步的链接对象,链接装配好的可执行文件(USER.EXE)装入主存后正是执行的对象。,USER. C USER.OBJ USER.EXE 编辑 编译 链接 执行 第1作业步 第2作业步 第3作业步

4、 第4作业步 作业步之间的关系,(2)往往只有前一个作业步运行成功,才能继续运行下一个作业步。 若源程序有错,编译一定不会成功,且系统会列出编译中的错误。这时,需返回到编辑状态进行修改,修改正确后再进行编译,只有编译的出错信息为零时才能进行下一个作业步;只有当链接成功后,程序才能执行。 系统在完成每一个作业步时,可以建立一个或几个进程,作业步所完成的工作是这些进程的执行结果,用户利用计算机解决问题,大致可分成两个步骤: 首先是编制程序,其次是使程序在计算机上运行。 这两步都离不开操作系统的支持。 操作系统是用户与计算机之间的接口,用户是通过操作系统来使用计算机的。 操作系统向用户提供了两类使用

5、接口: 一类为命令接口, 另一类为程序接口。,3.2 用户界面,命令接口(作业级接口),这类接口是系统为用户在作业一级请求操作系统服务而设置的 用户可利用这类接口组织作业的工作流程和控制作业的运行 这类接口又分为:联机接口、脱机接口。,联机接口,由一组键盘操作命令组成,是用户以交互方式请求操作系统服务的手段。用户通过终端或控制台打入操作命令,向系统提出服务请求。 用户每打完一条命令,控制就转入操作系统的命令解释程序,系统对该命令解释执行,完成指定的操作。执行完毕,控制又转回到终端或控制台,用户可接着打入下一条命令。如此反复,直到作业完成。 键盘操作命令的作业控制方式灵活方便,用户可根据运行情况

6、随时干预自己的作业,但是,系统的资源利用率不太高。,脱机接口,由一组作业控制命令(又称:作业控制语言)组成,供脱机用户使用。 所谓脱机用户,是指: 用户不能直接干预其作业的运行,而是事先把对系统的请求用作业控制语言写成一份作业说明书,连同作业的程序和数据一起,提交给系统。 当系统调度该作业执行时,由操作系统对作业说明书上的命令逐条解释执行,直至遇到“撤离”命令而停止该作业为止。,这种接口主要用于批处理方式操作系统, 其优点是:作业的操作过程由系统自动调度或由系统管理员干预,因而,系统资源利用率高,系统运行作业的效率高。 其不足是:用户与系统隔离,由于用户不能干预他自己作业的运行,使用户作业的调

7、试周期增长。 所有计算机的用户都是通过上述接口与操作系统发生联系的。,程序接口,由一组系统调用命令(又称广义指令)组成。 系统调用命令:可看成是机器指令的扩充,因为从调用形式上看,执行一条系统调用命令相当于执行了一条功能很强的机器指令。与机器指令不同之处在于:系统调用命令由操作系统核心解释执行。 系统调用:是操作系统向用户提供的程序一级的服务,用户程序借助于系统调用命令来向操作系统提出各种资源要求和服务请求。例如,用C语言编写程序时,可在程序中直接使用系统调用命令getchar(void),以从标准输入设备中读取下一个字符。,系统调用的实现,操作系统的基本服务是由系统调用实现的。 五种类型的系

8、统调用命令: 进程管理和控制 外部设备的输入和输出 磁盘管理 文件管理 存储空间和申请和释放,系统的状态,为了保证操作系统的安全和程序的正常运行,设置了两种系统状态: 管态(核心态):操作系统运行时所处的状态 目态(用户态):用户程序运行时所处的状态 管态和目态可以相互切换,从用户程序进入系统调用的步骤及执行过程如下: 首先,把系统调用命令所需要的参数或参数区首地址装入指定的通用寄存器; 然后,设置一条调用指令(如:“访管”指令或“软中断”指令); 当用户程序执行到该条调用指令时,就转到系统调用的处理程序。,。 。 。 调用指令 (SVC N) 。 。 。 。,(1)保留用户程序现场 (2)取

9、系统调用命令号并找到子程序入口 (3)返回,A0 A1 An ,入口地址表,A0 A1 An,SUB0,SUB1,SUBn,用户程序 系统调用处理机构 系统子程序,用户界面,用户通过用户界面使用操作提供的各种服务,也是一种接口: 指令行界面和编程人员在程序中的系统调用 图形界面 虚拟现实的界面,3.3 交互式作业与批处理作业,交互式作业:又称终端式作业或会话式作业。主要特点为交互式,采用人机对话的方式。实际操作系统中常称为前台作业。 批处理作业:脱机作业与联机作业两种,实现作业的批量处理。实际操作系统中常称为后台作业。,3.4 作业调度,在用户输入的一批作业中按一定的策略选取多个作业,为它们分

10、配必要的资源,使它们能同时执行。,作业调度必须注意的问题,选取作业的必要条件:系统现有未被分配的资源可以满足该作业的资源要求。 作业调度所选的作业只是有资格获得处理机,但并不一定能占有处理机并运行。,作业调度的主要任务,完成从后备状态到运行状态的转变 作业从运行状态到完成状态的转变 作业完成后的相应处理,1. 作业的状态及转换,一个作业从进入系统到运行结束经历四个不同的状态: 进入(提交):将某作业从外设输入到外存,并为其建立作业控制块(JCB)的过程。 后备:后备队列中,等待作业调度程序调度的状态。 执行:由调度程序调入内存,并分配一定的资源 完成:作业运行结束后输出结果或发生错误而终止,意

11、味着该作业在系统内消失。,作业和进程的状态转换图,数据,提交,完成状态,后备状态,运行状态,作业控制进程,输入设备,数据,源程序,输出设备,作业说 明书,输 入 井,运行,等待,就绪,输 出 井,输 入 程 序,输 出 程 序,作 业 调 度,进程 调度,作业控制块(Job Control Block),作业控制块(JCB)是作业存在的标志,保存对作业进行管理所需要的全部信息, 被保存于磁盘区域中。 当作业开始由输入设备向磁盘的输入井传输时,系统输入程序为其建立一个JCB,进行初始化,初始化的大部分信息取自作业说明书 作业控制块的撤消:作业完成后,其作业控制块由系统输出程序撤消,作业控制块被撤

12、消后其作业也不复存在,2. 作业调度的功能,采用作业控制块表,记录进入系统的各作业情况。 选定的调度算法,从后备作业中选择运行。 为被调度的作业分配运行所必须的资源。 运行结束回收作业所占用的系统资源等。 调度的关键在选择恰当的算法,3.调度算法评价,目标: 单位时间内运行尽可能多的作业 使处理机尽可能保持“忙碌” 使各种I/O设备得以充分利用 对所有的作业都是公平合理的,作业调度算法的影响因素,考虑因素: 调度算法应与系统设计目标保持一致 注意系统资源均衡使用 保证提交的作业在截止时间内完成 设法缩短作业平均周转时间,调度算法性能的衡量,CPU利用率 CPU利用率CPU有效工作时间/CPU总

13、运行时间 CPU总运行时间为有效工作时间与空转时间之和 吞吐量 单位时间内平均完成的作业数 吞吐量完成的作业道数/完成的时间,调度算法性能的衡量,作业平均周转时间 作业i的周转时间Ti =作业i运行时间 + 作业i等待时间 作业平均周转时间: T=(T1+T2+Tn)/ n 平均带权周转时间作业i的带权周转时间Wi =作业i周转时间 / 作业i运行时间 作业的平均带权周转时间: W=(W1+W2+Wn)/ n,4. 调度算法,(1)先来先服务算法 (FCFS:First Come First Serve) (2)最短作业优先算法 (SJF:Shortest Job First),(3)响应比高者(HRN)优先算法,HRN:Highest Response Ratio Next 响应比 R = 作业周转(响应)时间 / 作业执行时间 =(作业执行时间 + 作业等待时间)/ 作业执行时间 = 1 +(作业等待时间 / 作业执行时间),调度算法,(4)优先数调度算法 (HPF:Highest Priority First) (5)事件驱动法 每当发生一些事情就进入相应的调度程序工作。,作业调度算法应用例子1,假设在单道批处理环境下有四个作业,已知它们进入系统的时间、估计运行时间,应用先来先服务、最短作

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论