Decode360's Blog

业精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

  BlogJava :: 首页 :: 新随笔 :: 联系 ::  :: 管理 ::
  302 随笔 :: 26 文章 :: 82 评论 :: 0 Trackbacks
    一个作业从交给计算机系统到执行结束推出系统,一般都要经历提交、后备、执行和完成四个状态。其状态状态转换如图所示:
 
 
    job.JPG
 
 
    (1) 提交状态
    作业由输入设备进入外存储器(也称输入井)的过程称为提交状态。处于提交状态的作业,其信息正在进入系统。
 
    (2) 后备状态
    当作业的全部信息进入外存后,系统就为该作业建立一个作业控制块(JCB)。
 
    (3) 执行状态
    一个后备作业被作业调度程序选中分配了必要的资源并进入了内存,作业调度程序同时为其建立了相应的进程后,该作业就由后备状态变成了执行状态。
 
-----------------------
 
    作业调度的主要功能是按照某种原则从后备作业队列中选取作业进入内存,并为作业做好运行前准备工作和作业完成后的善后处理工作。作业从后备队列到被调度程序选中的时间间隔成为等待时间。作业调度的步骤如下:
 
    (1)根据JCB属性建立JCB控制表格,记录作业各种工作状态。
    (2)采用选定的调度算法,从后备作业中选出一道或多道作业投入运行。
    (3)为被选中的作业做好运行前的准备工作,包括创建进程及为相应的进程分配系统资源。
    (4)作业运行结束后的善后处理工作。比如状态登记、资源回收、输出处理、作业的撤销。
 
-----------------------
 
    常用的作业调度算法有以下几种:
 
    (1)先来先服务(FCFS)
    按作业到达的先后次序调度,它不利于短作业。
 
    (2)短作业优先(SJF)
    按作业的估计运行时间调度,估计运行时间短的作业优先调度。它不利于长作业,可能会使一个估计运行时间长的作业迟迟得不到服务。
 
    (3)响应比高者优先(HRN)
    综合以上两者,即考虑作业估计运行时间,又考虑作业等待时间,响应比是:HRN=(估计运行时间+等待时间)/估计运行时间
 
    (4)优先级调度
    根据作业的优先级别,优先级高者先调度。(如果是数字,则数值越大优先级越高)
 
-----------------------
 
    需要注意作业在执行阶段中,各个状态之间的转变及其发生的事件,这也是作业状态转换很重要的一部分。
 
    另外要注意区分作业等待时间和作业周转时间的区别。
 




-The End-

posted on 2009-05-05 21:37 decode360-3 阅读(369) 评论(0)  编辑  收藏 所属分类: Exam

只有注册用户登录后才能发表评论。


网站导航: