- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c_进程与作业管理
* * * * * * 作业与进程的区别: ????一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位。作业是用户需要计算机完成的某项任务,是要求计算机所做工作的集合。一个作业的完成要经过作业提交、作业收容、作业执行和作业完成4个阶段。而进程是对已提交完毕的程序所执行过程的描述,是资源分配的基本单位。其主要区别如下。 ???(1)作业是用户向计算机提交任务的任务实体。在用户向计算机提交作业后,系统将它放入外存中的作业等待队列中等待执行。而进程则是完成用户任务的执行实体,是向系统申请分配资源的基本单位。任一进程,只要它被创建,总有相应的部分存在于内存中。 ???(2)一个作业可由多个进程组成,且必须至少由一个进程组成,反过来则不成立。 ???(3)作业的概念主要用在批处理系统中,像UNIX这样的分时系统中就没有作业的概念。而进程的概念则用在几乎所有的多道程序系统中。 * * * * * 基本概念和术语 作业: 用户提交给计算机所做的工作称为作业。 作业步: 每个作业可分为不同要求的若干个步骤,各步间按顺序执行。 作业的组成 程序、数据、作业说明书 作用控制块(JCB): 作业分类: 交互式作业、批处理作业 作业控制块 JCB:Job Control Block 1、JCB的建立:OS为控制作业运行建立JCB,记录作业的有关信息。 2、JCB的内容: 作业名、优先级、内存需求量、外设需求量、作业状态、作业登录时间…… 3、JCB被链接在一起形成作业队列。 提交状态: 作业从输入设备进入后备作业池的过程。 收容(后备)状态: 等待作业调度程序调度的状态。 作业进入后备作业池后,系统建立作业控制块JCB,并把它插入后备作业队列中,等待作业调度程序的调度。 执行状态: 作业被调度程序选中,且分配了必要的资源,建立相应进程,进入执行状态。 完成状态: 作业正常执行结束或异常终止。 作业状态转换 作业调度 处理机二级调度: 宏观上:作业调度 微观上:进程调度 作业是用户向计算机系统提交的一个大任务。 大任务可分为若干个子任务的集合。 每个子任务都对应着一段指令或程序,它表现了任务的静态行为,进程表现了任务的动态行为 进程是申请资源的基本单位,作业的资源需求量等于它的进程所拥有的资源的总和。 作业调度程序主要功能 为每个作业建立一个作业控制块JCB; 按一定算法从后备作业中选择作业; 为选中的作业分配必要资源,建立进程; 作业完成,回收其资源,撤销该作业有关进程和JCB。 作业调度 调度算法 先来先服务(FCFS,FIFO): 短作业优先(SJF): 响应比高优先(HRN): 优先级法: 作业调度算法的选择原则 作业吞吐量:运行尽可能多的作业; 充分利用资源:CPU忙、I/O设备忙; 对各作业公平、合理,使用户满意:执行时间长短、等待时间等; 先来先服务(FCFS) 按作业来到的先后次序进行调度的,调度程序每次选择的作业是等待时间最久的 特点:实现简单,在一些实际的系统和一般应用程序中采用这种算法的较多。 短作业优先(SJF) 每次总是选择一个运行时间最小的作业调入内存(系统) 如果作业的到来顺序及运行时间不合适,会出现饿死现象 例如,系统中有一个运行时间很长的作业JN和几个运行时间小的作业,然后,不断地有运行时间小于JN的作业的到来,这样,作业JN就得不可调度而“饿死” 作业调度 响应比高者优先调度算法 先来先服务和短作业优先算法的片面性 先来先服务调度算法只考虑作业的等待时间,而忽视了作业的运行时间 短作业优先算法则相反,只考虑了作业的运行时间,而忽视了作业等待时间。 响应比高者优先调度算法是介于这两种算法之间的一种拆衷的算法。响应比越高,越易被选中。 作业调度 等待时间为作业进入系统到开始运行的时间 优先级法 综合考虑各方面的因素(作业等待时间、运行时间、缓急程度,系统资源使用等),给每个作业设置一个优先级,调度程序总是选择一个优先级最大(或者最小)的作业调入(系统)内存 困难在于如何综合考虑这些因素之间的关系,怎样处理。 作业调度 静态优先级与动态优先级 静态优先级 作业调度中的静态优先级大多按以下原则确定: 由用户自己根据作业的紧急程度输入一个适当的优先级。 由系统或操作员根据作业类型指定优先级。 系统根据作业要求资源情况确定优先级。 进程的静态优先级的确定原则: 按进程的类型给予不同的优先级。 将作业的优先级作为它所属进程的优先级。 动态优先级 进程的动态优先级一般根据以下原则确定: 根据进程占用有CPU时间的长短来决定。 根据就绪进程等待CPU的时间长短来决定。 请用信号量和PV操作实现读者/写者问题。
文档评论(0)