免费智能真题库 > 历年试卷 > 数据库系统工程师 > 2021年上半年 数据库系统工程师 上午试卷 综合知识
  第19题      
  知识点:   调度算法   作业调度   作业
  章/节:   计算机软件基础知识       

 
假设所有的作业同时到达,平均周转时间最短的调度算法是( )。
 
 
  A.  先来先服务
 
  B.  优先级调度
 
  C.  短作业优先
 
  D.  轮转算法
 
 
 

   知识点讲解    
   · 调度算法    · 作业调度    · 作业
 
       调度算法
        常用的进程调度算法有先来先服务、时间片轮转、优先级调度和多级反馈调度算法。
        (1)先来先服务(FCFS)。FCFS按照作业提交或进程成为就绪状态的先后次序分配CPU,即进程调度总是将就绪队列队首的进程投入运行。FCFS的特点是比较有利于长作业,而不利于短作业;有利于CPU繁忙的作业,而不利于I/O繁忙的作业。FCFS算法主要用于宏观调度。
        (2)时间片轮转。时间片轮转算法主要用于微观调度,其设计目标是提高资源利用率。通过时间片轮转提高进程并发性和响应时间特性,从而提高资源利用率。时间片的长度可以从几毫秒到几百毫秒,选择的方法一般分为固定时间片和可变时间片两种。
        (3)优先级调度。该算法是让每一个进程都拥有一个优先数,数值大的表示优先级高,系统在调度时总选择优先数大的占用CPU。优先级调度分为静态优先级和动态优先级两种。
        (4)多级反馈调度。多级反馈队列调度算法是时间片轮转算法和优先级算法的综合与发展。其优点有三个方面:第一,照顾了短进程以提高系统吞吐量,缩短了平均周转时间;第二,照顾I/O型进程以获得较好的I/O设备利用率和缩短响应时间;第三,不必估计进程的执行时间,动态调节优先级。
 
       作业调度
        选择调度算法需要考虑如下因素:与系统的整个设计目标一致,均衡地使用系统资源,及平衡系统和用户的要求。对于用户来说,作业能“立即执行”往往难以做到,但是应保证进入系统的作业在规定的截止时间内完成,而且系统应设法缩短作业的平均周转时间。
               作业调度算法
               常用的作业调度算法如下:
               (1)先来先服务。按作业到达的先后进行调度,即启动等待时间最长的作业。
               (2)短作业优先。以要求运行时间的长短进行调度,即启动要求运行时间最短的作业。
               (3)响应比高优先。响应比高的作业优先启动。响应比的定义为:
               
               其中,作业响应时间为作业进入系统后的等候时间与作业的执行时间之和,即响应比也可写为
               对于响应比高者优先算法,在每次调度前都要计算所有被选作业(在作业后备队列中)的响应比,然后选择响应比最高的作业执行。该算法比较复杂,系统开销大。
               (4)优先级调度算法。可由用户指定作业优先级,优先级高的作业先启动。也可由系统根据作业要求的紧迫程度,或者照顾“I/O繁忙”的作业,以便充分发挥外设的效率等。
               (5)均衡调度算法。这种算法的基本思想是根据系统的运行情况和作业本身的特性对作业进行分类。作业调度程序轮流地从这些不同类别的作业中挑选作业执行。这种算法力求均衡地使用系统的各种资源,既注意发挥系统效率,又使用户满意。
               作业调度算法性能的衡量指标
               在一个以批量处理为主的系统中,通常用平均周转时间或平均带权周转时间来衡量调度性能的优劣。假设作业Jii=1,2,…,n)的提交时间为tsi,执行时间为tri,作业完成时间为toi,则作业Ji的周转时间Ti和带权周转时间Wi分别定义为:
               Ti=toi-tsii=1,2,…,n),Wi=Ti/trii=1,2,…,n
               n个作业的平均周转时间T和平均带权周转时间W分别定义为:
               
               从用户的角度来说,总是希望自己的作业在提交后能立即执行,这意味着当等待时间为0时作业的周转时间最短,即Ti=tri。但是,作业的执行时间tri并不能直观地衡量出系统的性能,而带权周转时间Wi却能直观地反映系统的调度性能。从整个系统的角度来说,不可能满足每个用户的这种要求,而只能是系统的平均周转时间或平均带权周转时间最小。
 
       作业
        作业(Job)是用户提交给操作系统计算的一个独立任务。一般每个作业必须经过若干个相对独立又相互关联的顺序加工步骤才能得到结果,其中,每一个加工步骤称一个作业步(Job Step),例如,一个作业可分成编译、连接装配和运行三个作业步,往往上一个作业步的输出是下一个作业步的输入。作业由用户组织,作业步由用户指定,一个作业从提交给系统,直到运行结束获得结果,要经过提交、收容、执行和完成四个阶段。
   题号导航      2021年上半年 数据库系统工程师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第19题    在手机中做本题