操作系统慕课版第三章简答题

 一、简答题

  1. 高级调度和低级调度的主要任务是什么?为什么要引入中级调度?

高级调度:长城调度或者作业调度, 调度对象是作业,主要功能是根据某种算法,决定将外存上处于后备队列的相关作业调入内存,为其创建进程,分配必要的资源,并将其放入就绪队列。

低级调度:短进程或进程调度,其所调度的对象是进程(LWP)。主要功能是根据某种算法决定就绪队列中的哪个进程应获得处理机,并由分派程序将处理机分配给被选中的进程。

中级调度:内存调度,引入的目的是提高内存利用率和吞吐量。

  1. 何谓作业和JCB?

 作业:比程序更为广泛的概念,包含了通常的程序和数据,而且配有一份作业说明书,系统根据说明书对程序的运行进行控制。在多道批处理系统中,会将作业视为基本单位从外存调入内存

JCB:作业控制块,多道批处理系统中,会为每个作业设置一个作业控制块,即PCB,是作业在系统中存在的标志,保存了系统对作业进行管理和调度所需的全部信息。

  1. 在什么情况下需要使用JCB?其中包含了那些内容?

多道批处理系统,内容包含:作业标志,用户名称,用户账号,作业类型(CPU繁忙型、I/O繁忙型、批量型、终端型)、作业状态、调度信息(优先级、作业运行时间)、资源需求情况(预计运行时间、要求内存大小)、资源使用情况等

  1. 在作业调度中应如何确定接纳多少个作业和接纳那些作业?

确定接纳多少个作业的方法:综合考虑计算机系统规模,计算机运行速度,作业大小以及能够获得的系统性能好坏等情况后,做出适当的选择

先来先服务算法、短作业优先调度算法、基于作业优先级的调度算法(将外存作业优先级最高的作业优先调入内存)

  1. 试说明低级调度的主要功能?

根据某种算法、决定就绪队列中的哪个进程应获得处理机,并由分派程序将处理机分配给被选中的进程、

  1. 简述引起进程调度的原因

再多道程序运行环境下,内存存在多个进程,其数目往往多于处理机数目。这就要求系统能按照某种算法动态地分配给处于就绪状态的进程,以使之执行,其中分配处理机就是有调度程序执行的

正在执行的进程执行完毕,如果不进行新的就绪进程执行,将浪费处理资源

执行进程中自己调用阻塞原语将自己阻塞起来进入睡眠

执行中调用P原语进行操作,从而因资源不足而被阻塞;或调用了V原语操作等待资源的进程队列

执行进程提出I/O请求后被阻塞

在分时系统中时间片已经用完

在执行完系统调用等程序后返回用户进程时,这时可看作系统进程执行完毕,从而可调度选择一新的用户进程执行

就绪队列中的某进程的优先级变得高于当前执行的优先级,从而也将引起 进程调度

  1. 在抢占调度算法中,抢占的原则是什么?

优先级原则,短进程优先原则,时间片原则

  1. 在选择调度方式和调度算法时,应遵循那些准则?

面向用户应遵循的准则为:周期时间短,响应时间快,截止时间的保证,优先权准则。 面向系统应遵循的准则为:系统吞吐量高、处理机里利用率好、各类资源的平衡利用

  1. 何谓静态优先级和动态优先级?确定进程优先级的依据是什么?

静态优先级是指在创建进程时确定且在进程的整个运行期间保持不变的优先级    动态优先级是指在创建进程时赋予的优先级,可以随时推进或随其等待时间增加而改变的优先级,可以获得更好的调度性能。  确定进程优先级的依据:进程类型,进程对资源的需求和用户要求

  1. 试比较FCFS和SJF这两种调度算法

    

SJF

FCFS

特点

根据作业的长短计算优先级,作业越短,优先级越高

先来先服务,最先进入队列的进程, 为之最先分配处理机

缺点

利于短作业,不利于长作业

利于长作业,不利于短作业

  1. 在基于时间片的RR调度算法中,应如何确定时间片的大小?

选择一个略大于一次典型的交互所需要的时间,使大多数交互式进程能在一个时间片内完成,从而可以获得很小的响应时间

  1. 为什么说多级反馈队列调度算法能较好地满足各方面用户的需求?

多级反馈队列调度算法的调度机制为 设置多个就绪队列,每个队列都采用FCFS调度算法  且按队列优先级调度 ,且规定第一个队列的时间片略大于多数人机交互所需的处理时间

  1. 为什么在实时系统中要求系统(尤其是CPU)具有较强的处理能力?

若处理机的处理能力不够强,则有可能因处理机忙不过来而致使某些实时任务不能得到及时处理,从而导致发生难以预料的后果。

  1. 按照调度方式可将实时调度算法分为几种?

分为非抢占式调度算法和抢占式调度算法两种

  1. 实时系统常用的调度算法有哪些?请分别介绍它们?

先来先服务算法:系统按照作业到达的现货次序来进行调度

短作业优先调度算法:从就绪队列中选择估计运行时间最短的进程,并为之分配CPU运行

优先级调度算法:进程的等待时间就是进程的优先,等待的时间越长,进程的优先级越高

高相应比优先调度算法:既考虑作业的运行时间,又不会致使长作业的等待时间过长,从而改善了处理机调度的性能

轮转调度算法:基于时间片,采用非常公平的处理机分配方式,即让就绪队列上的每个进程每次进运行一个时间片

多级队列调度算法:将进程就绪队列从一个拆分为若干个,将不同类型或性质的进程固定分配在不同的就绪队列,不同的就绪队列采用不同的调度算法,一个就绪队列中的进程可以设置不同的优先级,不同的就绪队列本身也可以设置不同的优先级

多级反馈队列调度算法:设置多个就绪队列,每个队列都采用FCFS算法,按队列优先级调度

基于公平原则的调度算法:

保证调度算法:每个进程都能获得相同的处理机时间

公平分享调度算法:主要针对用户,所有用户能获得相同的处理机时间或所要求的时间比例、

实时调度算法:根据实时任务性质,将实时调度系统分为HRT调度算法和SRT调度算法,根据调度方式,将实时调度算法分为非抢占式算法和抢占式算法

抢占式调度算法:基于时钟中断的抢占式优先级调度算法

                               立即抢占的优先级调度算法

               非抢占式调度算法:非抢占式轮转调度算法

                                 非抢占式优先调度算法

最早截止时间优先算法:根据任务的截止时间确定任务的优先级,任务的截止时间越早,优先级越高,具有最早截止时间的任务排在队列的前面。调度程序在选择任务时,总是选择就绪队列中的第一个任务,并为之分配处理机

最低松弛度优先算法:在确定任务的优先级时,根据任务的紧急程度(或松弛度)调度,任务紧急程度越高赋予该任务的优先级就越高

  1. 在批处理系统中、分时系统和实时系统中,各采用哪几种进程(作业)调度算法?

分时系统:时间片轮转法

实时系统:最早截止时间优先EDF,最低松弛度LLF

批处理系统:先来先服务FCFS,短作业优先SPF,高相应比HRRF,多级反馈队列调度算法

  1. 什么是死锁?产生死锁的原因和必要条件是什么?如何预防死锁?

如果一组进程中的每个进程都在等待仅有改组中的其他进程才能引发的事件发生,那么改组进程是死锁的。

产生的必要条件:互斥条件, 请求和保持条件,不可抢占条件,循环等待条件。

死锁的预防:破坏“请求和保持条件”, 破坏“不可抢占”条件   破坏“循环等待“”条件

  1. 在解决死锁的几个方法中,那个方法最易于实现?那个方法可使资源利用率最高?

破坏“请求和保持”条件   破坏“循环等待”条件

 

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值