考研操作系统-进程管理(一)

上传人:jin****ng 文档编号:59516671 上传时间:2022-03-03 格式:DOC 页数:32 大小:356KB
返回 下载 相关 举报
考研操作系统-进程管理(一)_第1页
第1页 / 共32页
考研操作系统-进程管理(一)_第2页
第2页 / 共32页
考研操作系统-进程管理(一)_第3页
第3页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
考研操作系统 - 进程管理 ( 一 )( 总分: 105.00 ,做题时间: 90 分钟 )一、 单项选择题 ( 总题数: 35,分数: 35.00)1. 进程和程序的一个本质区别是 。(分数: 1.00 )A. 前者分时使用CPU后者独占CPUB. 前者存储在内存,后者存储在外存C. 前者在一个文件中,后者在多个文件中D. 前者为动态的,后者为静态的V解析: 分析 进程是程序在计算机上的一次执行活动。 当运行一个程序, 就启动了一个进程。 进程具有动态性、 并发性、 独立性、异步性和结构特征。显然,程序是静态的,进程是动态的。进程可以分为系统进程和用户进程。 凡是用于完成操作系统的各种功能的进程就是系统进程,它们就是处于运行状态下的操作系统本身。2. 多道系统环境下,操作系统分配资源是以 为基本单位。(分数: 1.00 )A. 作业B. 指令C. 程序D. 进程 V解析: 分析 多道环境下,程序这个概念已经难于反映程序并发执行的特点,所以,在多道环境下,为了更好地描述程 序并发执行的特点,引入了进程的概念。进程是在多道环境下资源分配的基本单位。3. 中断扫描机构是 扫描一次中断寄存器。(分数: 1.00 )A. 每隔一个时间片B. 每条指令执行周期内最后时刻 VC. 每当进程释放 CPUD. 每产生一次中断 解析: 分析 处理器执行完一条指令后,硬件的中断装置 (中断扫描机构 ) 立即检查有无中断事件发生,若无中断事件发 生,则处理机继续执行下面的指令;若有中断事件发生,则暂停现行进程的运行,而让操作系统中的中断 处理程序占用处理器,这一过程称为“中断响应”。4. 下面关于进程的叙述中,正确的是 。分数: 1.00 )A. 进程获得CPU运行是通过调度得到的VB. 优先级是进程调度的重要依据,一旦确定就不能改变C. 在单CPU的系统中,任何时刻都有一个进程处于运行状态D. 进程申请CPU得不到满足时,其状态变为阻塞解析: 分析 B错在优先级分静态和动态两种,动态的优先级是根据进程运行情况随时调整的。C错在若发生死锁则全部进程都处于阻塞状态。D错在进程申请CPU得不到满足就处于就绪状态,等待CPU勺调度。5. 在操作系统中,死锁出现是指 。(分数: 1.00 )A. 计算机系统发生重大故障B. 资源数目少于进程数C. 若干进程因竞争资源而无限等待其他进程释放已占有的资源VD. 进程同时申请的资源数超过资源总数解析: 分析 所谓死锁:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外 力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进 程称为死锁进程。由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程在无外力协助下, 永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象死锁。6. 一个进程被唤醒,意味着 。(分数: 1.00 )A. 该进程重新占有了 CPUB. 进程状态变为就绪 VC. 它的优先权变为最大D. 其PCB移至就绪队列的队首解析: 分析 进程被唤醒是进入就绪队列。 到底插入到就绪队列的什么地方, 取决于就绪的管理方法和进程调度的算法。 如果进程调度是最高优先数优先, 该进程按优先数插入该队列中; 如果该队列是按到达的先后次序排列的, 则按到达的先后次序插入。7. 下面所列进程的 3 种基本状态之间的转换不正确的是 。(分数: 1.00 )A. 就绪状态一执行状态B. 执行状态一就绪状态C. 执行状态一阻塞状态D. 就绪状态 _阻塞状态 V解析: 分析 进程在运行期间,不断地从一个状态转换到另外一个状态,它可以多次处于就绪状态和执行状态,也可多 次处于阻塞状态,但可能排在不同的阻塞队列。对于进程的三种基本状态的转换关系及其转换原因阐述如 下。就绪状态T执行状态。处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状 态变为执行状态。正在执行的进程也称为当前进程。执行状态T阻塞状态。正在执行的进程,因发生某事件而无法执行。例如,进程请求访问临界资源,而 该资源正被其它进程访问,则请求该资源的进程将由执行状态变为阻塞状态。执行状态T就绪状态。正在执行的程序,因时间片用完而被暂停执行,该进程便由执行状态变为就绪状 态。在抢占调度方式中,一个优先高的进程到来后,可以抢占一个正在执行的优先权的进程的处理机;这 时,该低优先权进程也将由执行状态转换为就绪状态。 从就绪状态直接到阻塞状态是不可能发生的,因此本题的答案选D。8. 由于并发进程执行的随机性, 一个进程对另一个进程的影响是不可预测的, 甚至造成结果的不正确 (分数: 1.00 )A. 造成不正确的因素与时间有关VB. 造成不正确的因素只与进程占用的处理机有关C. 造成不正确的因素与执行速度无关D. 造成不正确的因素只与外界的影H向有关解析: 分析 由于各进程的异步推进,进程之间的制约关系与时间有关,也即与进程的执行速度有关。9. 进程调度算法中,可以设计成“可抢占式”的算法有 。(分数: 1.00 )A. 先来先服务调度算法B. 最高响应比优先C. 最短作业优先D. 时间片轮转调度算法 V解析: 分析 常用的进程调度算法有先来先服务、 优先数、时间片轮转及多级反馈队列等算法。 “先来先服务调度算法” 是“非抢占式”的;“优先数调度算法”可以是“非抢占式”的,也可以是“抢占式”的;“时间片轮转 调度算法”是一种“抢占式”的。而“最高响应比优先”、“最短作业优先”算法适用于作业调度,而不 适于进程调度。三种进程调度算法的含义如下。(1) 先来先服务调度算法。这种调度算法是按照进程进入就绪队列的先后次序选择可以占用处理器的进程。 当有进程就绪时,把该进程排入就绪队列的末尾,而进程调度总是把处理器分配给就绪队列中的第一个进 程。一旦一个进程占有了处理器, 它就一直运行下去, 直到因等待某事件或进程完成了工作才让出处理器。(2) 优先数调度算法。 对每个进程确定一个优先数, 进程调度总是让具有最高优先数的进程先使用处理器。 如果进程具有相同的优先数,则对这些有相同优先数的进程再按先来先服务的次序分配处理器。就绪队列 中进程可按优先数从大到小排列,这样,进程调度也总是把处理器分配给就绪队列中的第一个进程。进程 被创建时系统为其确定一个优先数,进程的优先数可以是固定的,也可随进程的执行过程而动态变化。优 先数调度算法分为“非抢占式”的与“可抢占式”的两种。(3) 时间片轮转调度算法。系统规定一个“时间片”的值。调度算法让就绪进程按就绪的先后次序排成队 列,每次总是选择就绪队列中的第一个进程占用处理器,但规定只能使用一个“时间片”。如果一个时间 片用完,进程工作尚未结束,则它也必须让出处理器而被重新排到就绪队列的末尾,等待再次运行,当再 次轮到运行时,重新开始使用一个新的时间片。这样,就绪队列中的进程就依次轮流地占用处理器运行。10. 下面有关选择进程调度算法的准则中,不正确的是 。(分数: 1.00 )A. 尽快响应交互式用户请求B. 尽量提高处理器利用率C. 尽可能提高系统吞吐量D. 适当增加进程在就绪队列中的等待时间V解析: 分析 在选择调度算法时,应考虑以下几个准则:公平:确保每个进程获得合理的CPU份额;有效:使CPU尽可能的繁忙;响应时间:使交互用户的响应时间尽可能短;周转时间:使批处理用户等待输岀的时间尽可能短;吞吐量:使单位时间处理的进程数尽可能最多。进程的三个基本状态在一定条件下可以相互转化,进程由就绪状态变为执行状态的条件是(25);由执行状态变为阻塞状态的条件是(26)。(分数:1.00)A. 时间片用完B. 等待某事件发生C. 等待的某事件已发生D. 被进程调度程序选中V解析:A. 时间片用完B. 等待某事件发生VC. 等待的某事件已发生D. 被进程调度程序选中解析:分析进程在执行期间,可以多次处于就绪状态和执行状态,也可以多次处于阻塞状态,但处于新状态只有一次。新状态到就绪状态:当就绪队列允许接纳新进程时,系统便把处于新状态进程移入就绪队列。就绪状态到执行状态:进程调度程序为处于就绪状态的进程分配处理机后,该进程进入执行状态。执行状态到阻塞状态:正在执行的进程因需要等待某事件而无法执行,让岀处理机。阻塞状态到就绪状态:进程所等待的事件发生了,进程就从阻塞状态进入就绪状态。执行状态到就绪状态:正在执行的进程因时间片用完而被暂停执行;或者在可抢占调度方式中,一个优先级高的进程到来后,正在执行的优先级低的进程被强制撤下处理机,转换为就绪状态。执行状态到终止状态:一个进程已完成或发生某种特殊事件,进程将变为终止状态。11. 关于临界问题的一个算法(假设只有进程P0和P1可能会进入该临界区)如下(i为0或1):repeatretry :if(turn 工-1) turn:=i;if(turn 知)go to retry;turn:=-1;临界区;turn:=0其他区域;until false;该算法。(分数:1.00 )A. 不能保持进程互斥进入临界区,且会岀现“饥饿”B. 不能保持进程互斥进入临界区,但不会岀现“饥饿”VC. 保证进程互斥进入临界区,但会岀现“饥饿”D. 保证进程互斥进入临界区,不会出现“饥饿”解析:分析进程并发时容易产生争夺资源现象,必须在入口码处能够阻止进程同时进入临界区。要求根据给出的入口 码和岀口码判断程序是否正确,此类岀题方式较常见。此类题目要想得岀正确答案,关键是找岀程序的错 误。根据条件可先写岀每个进程的执行代码,注意程序中i的取值应与进程Pi的取值相同:p0: repeatretry : if(turn 工-1) turn:=0; if(turn 工 0) go to retry; turn:=- 1; 临界区; turn:=0;其他区域 ;until false;p1: repeatretry:if(turn 工-1) turn:=1; if(turn 工 1) go to retry; turn:=- 1; 临界区;turn:=0;其他区域 ;until false; 入口码最容易出错的地方就是在两个进程同时中请进入临界区的时候。若此时两个进程同时申请资源,此时turn的值是0,按照的顺序执行,两个进程同时进入临界区。再讨论“饥饿”问题。因为 入口码的判断条件是 turn=-1 则进程被阻塞,而只有在临界区中存在进程访问的情况下 turn 的值才会是 -1 , 所以没有进程会被饿死。12. 进程控制块是描述进程状态和特性的数据结构,一个进程 。(分数: 1.00 )A. 可以有多个进程控制块;B. 可以和其他进程公用一个进程控制块;C. 可以没有进程控制块;D. 只能有唯一的进程控制块。V解析: 分析 进程控制块(PCB)是保存进程的状态和控制进程转换的标识,也是进程存在的唯一标识。创建进程则产生PCE,撤销进程系统就要回收 PCB PCB主要包括描述信息、管理信息、资源清单。现场保护区和其他功能。 操作系统通过PCB表(或队列)来管理与控制进程。PCB表项的个数是确定的,所以也就限制了系统中的进 程个数不能超过某个值。进程控制块是进程存在的标志,进程与进程控制块是一对一的关系,进程控制块记录进程的控制信息和描 述信息,操作系统利用进程控制块对并发执行的进程进行控制和管理,进程控制块是操作系统中最重要的 记录行数据结构。13. 下列选项中,导致创建新进程的操作是 。I.用户登录成功设备分配 山启动程序执行(分数: 1.00 )A. 仅I和UB. 仅U和山C. 仅I和山 VD. I、U、山解析: 分析 进程在运行期间通过创建进程系统调用来创建多个新进程。每一个进程都有生命期,即从创建到消亡的时 间周期。当操作系统为一个程序构造一个进程控制块并分配地址空间之后,就创建了一个进程。进程的创 建来源于以下四个事件。提交一个批处理作业。在终端上一个交互式作业登录。操作系统创建一个服务进程。存在的进程创建新的进程。因此,在本题中,能导致创建新进程的操作有用户登录成功和启动程序执行。14. 在下列叙述中,正确的一条是 。(分数: 1.00 )A. 分时系统中,时间片越小,响应时间越长B. 多道程序的引入,主要是为了提高CPU及其他资源的利用率VC. 飞机票订票系统是分时系统D. PCB是进程存在的唯一标志,而程序是系统感知进程存在的唯一实体解析: 分析 分时系统的响应时间Tnq,n是用户数目,q是时间片。当在用户数目一定的情况下,时间片越小,响应 时间越短。因此,选项 A错误。在单道程序环境中,系统的全部资源为一个作业所独占,如果该作业在进行输入或输出时,CPU仍然被它所占有,处于等待状态。如果采用多道程序设计技术,当某个作业输入或输出时,CPU就可处理其他的作业,其他资源也是类似的。选项 B正确。飞机票订票系统是实时信息处理系统。所以,选项C错误。PCB是进程存在的唯一标志,也是系统感知进程存在的唯一实体。而进程的程序部分描述了进程所要完成 的功能。选项 D 错误。15. 分配到必要的资源并获得处理机时的进程状态是 。(分数: 1.00 )A. 就绪状态B. 执行状态 VC. 阻塞状态D. 撤销状态解析: 分析 一般来说进程可分为就绪、执行和阻塞 3 种状态。就绪状态 (Ready) :进程已分配到除处理机以外的所有必要资源, 具备了执行的条件, 可能会有多个进程处 于就绪状态,排成就绪队列。执行状态 (Running) :进程已分配到所有必要资源, 并占用处理机正在执行其程序。 单处理机系统中只能有 一个进程处于执行状态,多处理机系统中可能有多个进程处于执行状态。阻塞状态 (Blocked) :也叫等待或睡眠状态, 是进程由于等待某种事件的发生而处于暂停执行的状态。如进 程因等待 I/O 的完成、等待缓冲空间等。16. 若信号量的初值为 2,当前值为 -3 ,则表示有 个等待进程。(分数: 1.00 )A. 1B. 2C. 3 VD. 5解析: 分析 当信号量控制互斥问题时,其初值往往代表资源的个数。本题初值为2,说明该种资源数量 2个。当进程将2 个资源全部占有之后, 信号量值减至 0,此时若再有进程要求申请该资源, 则必须在此信号量上等待, 具体表现为:将信号量的值减 1,导致信号量的取值为负。此时有几个进程申请该资源,信号量便被减几次;因此S的值为-3,则表示有3个进程在等待该资源。17. 下列选项中,操作系统提供的给应用程序的接口是(分数: 1.00 )A. 系统调用VB. 中断C. 库函数D. 原语 解析: 分析 显然,操作系统提供的给应用程序的接口是系统调用。原语和中断都是操作系统本身的功能,不是提供给 应用程序的接口。库函数是程序设计语言提供给程序员编程用的。18. 既考虑作业等待时间,又考虑作业执行时间的调度算法是 。(分数: 1.00 )A. 响应比高者优先 VB. 短作业优先C. 优先级调度D. 先来先服务 解析: 分析 响应比是用等待时间 / 运行时间作为优先数来决定调度哪个作业运行, 根据分数的特点, 运行时间越长的优 先级越小,因此考虑了短作业优先的原则;等待时间越长的优先级会越高,照顾了因运行时间长而被迫等 待的作业。19. 在进程控制块中, 主要包括 4 方面用于描述和控制进程运行的信息。 其中, 主要是由处理机各种寄存器中的内容所组成。(分数: 1.00 )A. 进程标识符信息B. 进程调度信息C. 处理机状态信息 VD. 进程控制信息解析: 分析 在进程控制块中,主要包括 4 方面用于描述和控制进程运行的信息,分别是进程标识符信息、处理机状态 信息、进程调度信息和进程控制信息。其中,处理机状态信息主要是由处理机各种寄存器中的内容所组成。处理机在运行时,许多信息新放在寄存器中,当处理机被中断时,所有这些信息都必须保存在被中断进程的PCB中,以便在该进程重新执行时,能从断点继续执行。20. 下列进程调度算法中,综合考虑进程等待时间和执行时间的是 。(分数: 1.00 )A. 时间片轮转调度算法B. 短进程优先调度算法C. 先来先服务调度算法D. 高响应比优先调度算法 V 解析: 分析 时间片轮转法和先来先服务算法都是用户感觉公平的方法,并未考虑进程等待时间和执行时间,而短进程 优先考虑的是进程执行时间。响应比优先算法是根据公式:响应比=1+作业等待时间/运行时间的估计值来计算优先级的。当运行时间短时,优先数高,而运行时间长 的进程,优先级会因为其等待时间的延长而提高。因此,这是一个综合了等待时间和执行时间的算法。在操作系统中引入并发可以提高系统效率。若有两个程序A和B, A程序执行时所做的工作按次序需要用CPU 10秒;DEV1: 5秒;CPU 5秒;DEV2 10秒;CPU 10秒。B程序执行时所做的工作按次序需要用 DEV1: 10秒;CPU 10秒;DEV2 5秒;CPU 5秒;DEV2 10秒。如果在顺序环境下执行 A B两个程序,CPU的利用率为(8);如果在并发环境下执行两个程序,假设A程序先执行,则 CPU的利用率为(9)。(分数:1.00 )A. 30%B. 40%C. 50% VD. 60%解析:A. 99%B. 89% VC. 79%D. 69%解析:分析如果A、B顺序执行,根据顺序环境的特点,程序 A结束之后程序B才可以开始运行,因此总的运行时间应 是两个程序运行所需实际时间的总和,即(10+5+5+10+10)+(10+10+5+5+10)=80 秒再计算CPU运行时间:(10+5+10)+(10+5)=40 秒,因此CPU利用率为40秒/80秒=50%如果并发执行,则 在程序A不使用CPU时,B可以占用CPU与A对其他设备的使用同步进行。程序 A、B是同时进行着,也是同时结束的,即运行时间重叠。因此可得,程序运行所需时间为45秒,而CPU运行时间为40秒,由此可得CPU利用率为40秒/45秒=89%21. 进程间的同步是指进程间在逻辑上的相互 关系。(分数:1.00 )A. 联接B. 制约 VC. 继续D. 调用解析:分析某些进程为完成同一任务需要分工协作,由于合作的每一个进程都是独立地以不可预知的速度推进,这就需要相互协作的进程在某些协调点上协调各自的工作。为了解决进程间协作关系(直接制约关系),因此引入了进程同步。进程同步主要源于进程合作,是进程间共同完成一项任务时,直接发生相互作用的关系,为进程之间的直 接制约关系。在多道环境下,这种进程间在执行次序上的协调是必不可少的。22. 下列选项中,降低进程优先权级的合理时机是 。(分数:1.00 )A. 进程的时间片用完 VB. 进程刚完成I/O,进入就绪队列C. 进程持久处于就绪队列D. 进程从就绪状态转为运行态 解析:分析在操作系统中,进程调度的时机主要有:进程状态转换的时刻:进程终止、进程睡眠;当前进程的时间片用完时;设备驱动程序;进程从中断、异常及系统调用返回到用户态时。在试题所给岀的4个选项中,A和D属于上述“时机”,但是,当进程从就绪状态转为运行态时,如果降 低进程优先权级,则可能导致这种正在发生的转换不能实施,这不合理。因此,相对而言,比较合理的时 机是进程的时间片用完的时候。在动态优先级调度方法中,一般采取的策略(也是比较合理的策略)是,进程处于就绪队列中的时间越长,其优先级就应该越高。 也就是说,当进程持久处于就绪队列时, 应该提高其优先级,而不是降低其优先级。23. 通常,用户进程被建立后,。(分数:1.00 )A. 便一直存在于系统中,直到被操作人员撤销B. 随着作业运行正常或不正常结束而撤销VC. 随着时间片轮转而撤销与建立D. 随着进程的阻塞或唤醒而撤销与建立解析:分析每一个进程都有生命期,即从创建到消亡的时间周期。当操作系统为一个程序构造一个进程控制块并分配 地址空间之后,就创建了一个进程。用户可以任意的取消用户的作业,随着作业运行的正常或不正常结束,进程也被撤销了。操作系统中,可以并行工作的基本单位是(12),它也是核心调度及资源分配的基本单位,它是由(13)组成的,它与程序的重要区别之一是(14)。(分数:0.99 )A. 作业B. 函数C. 进程 VD. 过程解析:A. 程序、数据和PCB VB. 程序、数据和标识符C. 程序、标识符和PCBD. 数据、标识符和PCB解析:A. 程序有状态,而它没有B. 它有状态,而程序没有C. 程序可占有资源,而它不可D. 它能占有资源,而程序不能V解析:分析进程的本质特征是并发,在现代操作系统中,用户程序以进程方式占用系统资源,为管理进程,建立PCB描述进程的关键数据结构。24. 某计算机系统中有8台打印机,由K个进程竞争使用,每个进程最多需要3台打印机。该系统可能会发生死锁的K的最小值是。(分数:1.00 )A. 2B. 3C. 4 VD. 5 解析: 分析 发生死锁的现象就是占有并等待,并且等待的资源不会被释放。可假设死锁已发生,进而讨论进程个数。肯定发生死锁的最小进程数是这样得到的:假设K个进程,每个进程需要 M个资源,而每个进程已占有 M-1个,都在等待最后一个资源,于是死锁发生;此时,只要再多一个资源,死锁便可解除,K便是所求值。根据题目条件,M=3, KX(M-1)=8,得K=425. 产生死锁的基本原因是 和进程推进顺序非法。(分数: 1.00 )A. 资源分配不当 VB. 系统资源不足C. 作业调度不当D. 进程调度不当 解析: 分析 死锁的发生和资源的分配关系密切。当用户申请资源,系统不加限制地随意分配就容易发生死锁,所以死 锁应该是资源分配不当时产生的后果。26. 时间片轮转法进行进程调度是为了 。(分数: 1.00 )A. 多个终端都能得到系统的及时响应 VB. 先来先服务C. 优先级较高的进程得到及时响应D. 需要CPU最短的进程先做解析: 分析 时间片轮转(RR)调度算法尤其适用于分时系统。RR调度算法与FCFS调度算法非常相似,但是添加了进程间的抢占转换。RR定义了一个小的时间单元,被称为时间量(或时间片)。一个时间量通常在10毫秒到100毫秒之间。把就绪队列作为循环队列对待。CPU调度程序环绕这个就绪队列,将CPU分配到每个进程,每隔一个时间量转换一次。在这种调度算法中,系统将所有就绪进程按到达时间的先后次序排成一个队列。进程调度程序总是选择队 列中第一个进程执行,且仅能执行一个时间片。在使用完一个时间片后,即使进程并未完成其运行,也必 须将处理机交给下一个进程。27. 单处理机系统中,可并行的是 。I .进程与进程处理机与设备 山.处理机与通道 W.设备与设备(分数: 1.00 )A. I、U和山B. I、U 和 WC. I、山和WD. nm 和w V解析: 分析 在单处理机系统中,为提高系统效率,让内存中保持多个处于不同状态的进程(这称为进程并发执行 ),但在同一时刻占用处理机的却只有一个进程,因此,进程之间不是并行的;现代操作系统的形成正是通道产 生的结果,通道是可以独立于 CPU空制输入输出的设备,在处理机进行运算时,通道可同时进行I/O操作, 因此,这两者也是并行的; 处理机运算时, 外设可同时进行输入 /输出的操作, 因此, 也产生了并行; 显然, 设备和设备之间也是可以并行的。28. 个运行进程必须具备的3种基本状态是(分数:1.00 )A. 就绪状态、挂起状态和执行状态B. 挂起状态、阻塞状态和执行状态C. 就绪状态、执行状态和阻塞状态VD. 就绪状态、执行状态和终止状态解析:分析一般来说,按进程在执行过程中的不同情况,进程的基本状态包括有以下几种。就绪状态(Ready):进程已分配到除处理机以外的所有必要资源,具备了执行的条件,可能会有多个进程处于就绪状态,排成就绪队列。执行状态(Running):进程占用处理机正在执行其程序。单处理机系统中只能有一个进程处于执行状态, 多处理机系统中可能有多个进程处于执行状态。阻塞状态(Blocked):也叫等待或睡眠状态,是进程由于等待某种事件的发生而处于暂停执行的状态,如进程因等待I/O的完成、等待缓冲空间等。29. 有5个批处理任务 A B、C D、E几乎同时到达一计算中心。其预计运行时间分别为10、6、2、4和8分钟。其优先级(由外部设定)分别为3、5、2、1和4,这里5为最高优先级。下列各种调度算法中,其平 均进程周转时间为14分钟的是。1.00 )A. 时间片轮转B. 优先级调度C. 先来先服务D. 最短作业优先V解析:分析按照不同调度算法计算平均周转周期。时间片轮转:因没有给岀时间片的长度,暂不计算。优先级调度:100/5=20分钟,先来先服务:86/5=17.2分钟。最短作业优先:70/5=14分钟。调度过程如图 2-10所示*30. 通过撤销进程可以进行死锁恢复,还可以采用 方法解除死锁。(分数:1.00 )A. 阻塞进程B. 资源剥夺 VC. 提高进程优先级D. 降低进程优先级解析:分析解除死锁的方法有撤消进程法和资源剥夺法。即强行将死锁的进程撤销,或强行剥夺死锁进程的资源,以 打破僵持,使系统能够继续运转下去。采用资源剥夺法,将剥夺的资源分配给死锁进程,以解决死锁。31. 设与某资源相关联的信号量初值为3,当前值为1,若M表示该资源的可用个数,N表示等待该资源的进程数,则M, N分别是。(分数:1.00 )A.0,1B. 1 , 0 VC. 1 , 2D. 2 , 0解析:分析信号量的初值为3,说明有3个这样的资源可供使用。但其当前值为1,说明当前只有1个这样的资源可用,而另外2个已经分配。由于还有 1个资源可用,所以此时没有等待该资源的进程。32. 调度算法有利于CPU繁忙型的作业,而不利于I/O繁忙型的作业(进程)。(分数:1.00)A. 时间片轮转调度算法B. 先来先服务调度算法VC. 短作业(进程)优先算法D. 优先权调度算法解析:分析目前存在着多种调度算法,有的算法适合作业调度;有的算法适用于进程调度;但也有些调度算法,既可 用于作业调度,也可用于进程调度。其中,先来先服务(FCFS)调度算法是一种最简单的调度算法。当在作业调度中采用该算法时,每次调度是 从后备作业队列中,选择一个或多个最先进入该队列的作用,将它们调入内存,为它们分配资源、创建进 程,然后放入就绪队列。在进程调度中,采用FCFS调度算法时,则每次调度就是从就绪队列中选择一个最先进入该队列的进程,把处理机分配给它,使之投入运行。该进程一直运行到完成或发生某事件而阻塞后,才放弃处理机。FCFS算法比较有利于长作业(进程),而不利于短作业(进程),如表2-6所示列出了 A、B、C、D四个作业 分别到达系统的时间、要求服务的时间、开始执行时间及各自的完成时间,并计算岀各自的周转时间和带 权周转时间。表2-6四个作业情况表进程 名到达时 间服务时间开始执行 时间完成时间周转时间带权周转时 间A010111B110011011001C 2 1101P 102100100D31001022021991.99从表2-6中可以看出,其中短作业C的带权周转时间竟高达 100,而长作业D的带权周转时间仅为1.99。由 此可见,FCFS调度算法有利于 CPU繁忙型的作业,而不利于I/O繁忙型的作业(进程)o CPU繁忙型作业,是指该类作业需要大量的 CPU时间进行计算,而很少请求 I/O。通常的科学计算便属于 CPC繁忙型作业。 I/O繁忙型作业是指 CPU进行处理时,又需频繁地请求I/O,而每次I/O的操作时间却很短,目前大多数的 事务处理,都属于I/O繁忙型作业。可以通过一个例子来说明采用FCFS调度算法的调度性能,表 2-7中有5个进程A、B、C、D和E,它们到达的时间分别是0、1、2、3和4,所要求的服务时间分别是4、3、5、2和4,由表2-7还可以看出,A B C、D和E的完成时间分别是 4、7、12、14和18,从每个进程的完成 时间中减去其到达时间,即得到每个进程的周转时间,进而可以算岀每个进程的带权周转时间。表2-7 FCFS高度算法性能作业情况进程名称ABCDE平均到达时间01234调度算法服务时间43524FCFS完成时间47121418周转时间461011149带权周转时间1225.53.52.8 :、综合题(总题数:35,分数:70.00)33. UNIX作系统使用copy-on-write 方式来实现fork()系统调用以便创建一个新进程。但在创建进程时并 不能完全使用copy-on-write方式,因为进程的某些部分必须在创建时即时copy,请问进程的哪些部分必须在创建时即时copy,哪些部分可以采用 copy-on-write方式而不用即时copy?这样做有什么好处?(分数:1.00)正确答案:(每个进程执行时必须将页表始址或段表始址调到初始寄存器,并将页表调入内存,否则进程无法执行,所以页表部分必需在创建时即时copy,其他进程管理程序所需的进程信息如进程号等也需要在创建时即时copy,而那些运行暂时不需要的进程用户上下文及数据可以先不复制到子进程空间,而是采取 copy-on-write策略,因为子进程以后很可能不会用到这部分内容,而是调用exec()用新的进程上下文覆盖其原有上下文,这样一来可以节省fork()调用开销,避免不必要的 copy。)解析:34. 进程和线程的主要区别是什么?(分数:1.00)正确答案:(线程具有许多传统进程所具有的特征,故又称为轻型进程或进程元;而把传统的进程称为重型进程,它相当于只有一个线程的任务。在引入了线程的操作系统中,通常一个进程都有若干个线程,至少 也需要有一个线程。下面从调度、并发性、系统开销、拥有资源等方面,来比较线程与进程。(1) 调度。在传统操作系统中,拥有资源的基本单位和独立调度、分派的基本单位都是进程。而在引入线 程的操作系统中,则把线程作为调度和分派的基本单位,而把进程作为资源拥有的基本单位,使传统进程 的两个属性分开,线程便能轻装运行,从而提高系统的并发程度。在同一进程中,线程的切换不会引起进 程的切换,在由一个进程中的线程切换到另一进程中的线程时,将会引起进程切换。(2) 并发性。在引入线程的操作系统中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间, 亦可并发执行,因而使操作系统具有更好的并发性,从而能更有效地使用系统资源和提高系统的吞吐量。(3) 拥有资源。不论是传统的操作系统,还是设有线程的操作系统,进程都是拥有资源的一个独立单位,它可以拥有自己的资源。一般来说,线程不拥有系统资源(也有一点必不可少的资源),但它可以访问其隶属进程的资源。亦即,一个进程的代码段、数据段以及系统资源,如已打开的文件、I/O设备等,可供同一进程的所有线程共享。(4) 系统开销。在创建或撤销进程时,系统都要为之分配或回收资源,如内存空间、I/O设备等。因此,操作系统所付岀的开销将显著地大于在创建或撤消线程时的开销。类似地,在进行进程切换时,涉及整个当前进程CPU环境的保存以及新被调度运行的进程CPU环境的设置。而进程切换只需保存和设置少量寄存器的内容,并不涉及存储器管理方面的操作。可见,进程切换的开销也远大于线程切换的开销。此外,由 于同一进程中的多个线程具有相同的地址空间,使两者之间的同步和通信的实现也变得比较容易,在有的 系统中,线程的切换、同步和通信都无须需操作系统内核干预。)解析:某个操作系统的设计目标是同时支持实时任务和交互式任务,它的实现采用混合式多线程策略,处理器调度策略采用多队列策略,在系统资源匮乏时,可以采用中级调度来平衡系统负载。(分数:2.00 )(1) .该操作系统中存在着哪些与处理器调度有关的实体?(分数:1.00 ) 正确答案:(进程:系统进行资源管理和保护的单位,与处理器调度相关的实体。内核级线程:进程的一条执行路径,操作系统进行处理器调度的实体。用户级线程:进程的一条执行路径,操作系统不知道它的存在,在执行时映射到内核级线程上。)解析:(2).请设计一种合理的多队列进程调度策略,它既能满足实时任务调度的需要,又能从外设访问角度来满 足交互式任务调度的需要。(分数:1.00)正确答案:(划分成实时优先级层次和交互式优先级层次,其中实时优先级层次较高。实时优先级层次包括多个优先级,可以组织成多个就绪线程队列,也可以组织成一个优先队列;可以采用抢占式优先数调度策 略,如果分配时间片,应该分配较长的时间片。交互式优先级层次可以划分成 3个就绪线程队列,按照优先级从高到低依次为:访问字符设备的就绪线程 队列、访问块设备的就绪线程队列、时间片到的就绪线程队列;其中优先级较高的就绪线程队列具有较短 的时间片。)解析:35. 某操作系统将消息缓冲通信作为进程之间通信的基本手段。Send和Receive分别为发送消息和接收消息原语。请设计一种方案,用于Send和Receive原语来实现基于信号量的P、V操作。(分数:1.00)正确答案:(1)所有信号量由一个叫同步的进程来完成,对应每个信号量设置一个计数器(记录信号量的值)和一个等待进程链表。(2)P、V操作通过调用P、V过程来完成。P和V过程将信号量s和操作作为消息发给同步进程,然后等待 同步进程的回答。(3)同步进程接收到消息后,看所要求的操作能否完成。P操作当S的值为0时,同步进程把调用者推入队列,不发回消息,调用者处于等待状态;V操作总能完成,所以发回一空消息给调用者,将其解冻,同时检查S的值是否为1和相应等待队列是否为空。若S为1,且队列不空,则从队列中移出一个进程,向它发送一个空消息,将它解冻。)解析:36. 对基本的进程状态转换图 2-11中的状态转换编号1、2、3、4。令I和J分别取值1、2、3、4(J不等 于I)。请分别讨论在状态转换I和状态转换J之间是否存在因果关系;若存在,请指岀这种关系是必然的, 或是有条件的,条件是什么 ?(分数:1.00 )正确答案:(根据图2-11分析,状态转换1和2之间:没有2就不会有1,因为2是进程从就绪态被 CPU 调度进入运行态的,若没有这一转换过程,则不会存在运行状态的进程,因此也就不会岀现从运行态进入 就绪态的进程,即状态转换 1不会岀现:状态转换 3和4之间:没有4就不会有3。因为4是进程因等待 资源而从运行态进入阻塞态的,在得到资源后才从阻塞态进入就绪态(即状态转换3),因此可以说没有 4就不会出现3。还可以认为没有2就不会有4,因为任何进程必须先运行才可以申请资源,所以没有进入运 行态的进程,就不可能有进入阻塞状态的进程。)解析:37. 简述计算机系统的中断机制及其作用。中断装置如何判别发生的是自愿性中断还是强迫性中断?(分数:1.00 )中断装置由一些特定的寄存器正确答案:(中断机制包括硬件的中断装置和操作系统的中断处理服务程序。和控制线路组成,中央处理器和外围设备等识别到的事件保存在特定的寄存器中,中央处理器每执行完一 条指令,均由中断装置判别是否有事件发生。若无事件发生,CPU继续执行;若有事件发生,则中断装置中断原占有CPU的程序的执行,让操作系统的处理事件服务程序占用CPU对出现的事件进行处理,事件处理完后,再让原来的程序继续占用CPU执行。处理器执行指令时,根据操作码是否是访管指令,来确定是否有自愿性中断事件发生。若有,则通知中断装置; 对于强迫性中断, 中断装置只要检查中断寄存器的内容,若非“0”, 表示有强迫性中断事件发生。 )解析:38. 给出中断响应的系统流程。分数: 1.00 ) 正确答案:(每一个程序都要有一个程序状态字 (PSW)来刻画本程序的执行状态,在单处理器的计算机系统 中整个系统设置一个用来存放当前运行进程的 PSW勺寄存器,该寄存器称为“程序状态字寄存器”。为了 说明中断响应过程,我们区分三种 PSW:(1) 存放在程序状态字寄存器中的 psw是当前正占用处理器的进程的psw称“当前psWo(2) 出现中断事件后,要由操作系统的中断处理程序占用处理器,让中断处理程序处理出现的中断事件。 我们把中断处理程序的 PSW称为“新PSW,新PSW中存放着中断处理程序的入口地址。(3) 中断处理程序在占用处理器前,必须把被中断进程的PSW保护好,以便该进程在适当的时候能使被中断时的情况继续执行。把保护好的被中断进程的PSW称为“旧PSWo当中断装置发现中断事件后,首先把出现的中断事件存放到程序状态字寄存器中的中断码位置,然后把程序状态字寄存器中的“当前 PSW作为“旧PSW存放到预先约定好的主存固定单元中保护起来,再把已经确定好的操作系统处理程序的“新PSW送到程序状态字寄存器, 成为“当前PSW,这一过程称为“交换:psw/o中断装置通过交换 PSW使被中断进程让出处理器,且使处理器按照中断处理程序的“新PSW控制执行。于是,中断处理程序就占用了处理器, 它先从保存好的旧PSW中取出中断码,分析发生的具体事件, 从而可完成对中断事件的处理。一个进程占有处理器运行时,可以由于各种不同的事件发生而被中断。对各类不同的事件操作系统的处理 是不同的,一般来说,对每一类事件都要有该类事件的处理程序,每一类处理程序都有一个“新PSW”o中断装置发现中断事件后应按中断事件类让相应的中断处理程序占有处理器,为此,可预先约定一些主存 固定单元用来分别存放各类中断处理程序的“新PSW和由于各种不同原因被中断的进程的“旧PSW,发生哪类中断事件就交换哪一类的新、旧PSW具体处理过程如下:中断装置发现中断事件后把中断事件存入程序状态字寄存器中当前PSW勺中断码位置;把当前PSW保存起来,根据发生的事件类找出事件对应的旧PSW位置(假设发生的是外部中断事件),把当前的PSW保存到该位置上;把该类事件处理程序的新 PSW送入程序状态字寄存器,处理器就按这个新PSW空制处理该事件的中断处理程序执行。) 解析:39. 给出不同中断事件的中断处理程序的处理。分数: 1.00 ) 正确答案:(各类中断事件的处理原则大致如下。(1) 硬件故障中断事件的处理排除这类故障必须进行人工干预,因此处理这类事件只能是输出一些故障信息。例如,当主存储器的奇偶 校验或海明校验装置发现主存储器读 /写错误时, 产生故障中断事件, 中断处理程序要把访问该主存单元的 进程状态改成“等待干预”,向操作员报告出错主存单元的地址和错误性质。待操作员排除故障后重新启 动进程,使“等待干预”状态的进程变成“就绪”状态。(2) 程序中断事件的处理程序中断事件往往与程序的具体编制有关,不同的用户对出现的事件可以有不同的处理要求,所以,中断 处理程序可把出现的事件转交给用户自行处理。如果用户对发生的事件没有提出处理办法,那么操作系统 就把发生事件的进程名、程序断点、事件性质等报告给操作员。(3) 外部中断事件的处理 用户可以用控制板上的中断键请求调用操作系统的某个特定功能。所以,当按压了一个中断键产生一个外 部中断事件时,处理该事件的程序根据中断键的编号把处理转交给一个特定的例行程序。时钟是操作系统进行调度工作的重要工具,在UNIX系统中,硬件按电源频率每隔20毫秒产生一次中断请求。处理程序累计时钟中断次数用来调整日历时钟时间。只要在开机时置好开机时刻的年、月、日、时、分、秒,以后根 据时钟中断的次数可计算出当前的时间。也可把时钟作为定时闹钟,先确定一个定时的时间,只要把当前 的日历时钟时间与定时的时间相加就得到唤醒时间,处理程序每隔一段时间(例如 1 秒钟)把日历时钟时间与唤醒时间比较,当日历时钟时间唤醒时间,就表示定时的时间到了,起到闹钟的作用。(4) 输入/ 输出中断事件的处理I/O 中断通常包括 I/O 正常结束和 I/O 错误,不同的情况系统采用不同的处理方法。(5) 访管中断事件的处理 这类中断事件表示正在运行的进程要调用操作系统的功能,中断处理程序可设置一张“系统调用程序入口 表”,中断处理程序按系统调用类型号查这张入口表,找到相应的系统调用程序的入口地址,把处理转交 给实现调用功能的程序执行。综上所述,在多数情况下,中断处理程序只须做一些保护现场。分析事件性质等原则性的处理,具体的处 理可由适当的例行程序来完成。因此,中断处理程序可以创建一些处理事件的进程,具体的处理就由这些 进程来实现。 )解析:40. 进程之间存在哪几种制约关系 ?各是什么原因引起的 ?下面活动分别属于哪种制约关系 ?(1) 若干个同学去图书馆借书。(2) 两队举行篮球赛。(3) 流水线生产的各道工序。(4) 商品生产和社会消费。分数: 1.00 ) 正确答案: (进程之间存在直接制约关系 (即同步问题 )和间接制约关系 (即互斥问题 ) ;同步问题是存在逻辑 关系的进程之间相互等待所产生的制约关系,互斥问题是相互逻辑关系的进程竞争使用资源所发生的制约 关系。(1) 属于互斥关系,因为书的个数是有限的,一本书只能借给一个同学。(2) 属于互斥关系,篮球只有一个,两队都要竞争。(3) 属于同步关系,各道工序的开始都依赖前道工序的完成。(4) 属于同步关系,商品没生产出来,消费无法进行,商品未消费完,生产也无须进行。)解析:41. 试从物理概念上来说明记录型信号量和 wait 与 signal 操作。分数: 1.00 )正确答案:(信号量是具有整数值的对象,支持两种原子操作P0和V0o P操作减少信号量的值,若新的信号量的值小于0,则操作阻塞;V操作增加信号量的值,若结果值大于或等于0, V操作就要唤醒一个等待的线程或进程。例如考虑管理一个计数资源,也就是说,资源是一些固定数目的实例(如n个缓冲区),进程想获得资源的一个实例,当它使用完这个资源后释放它,这个资源能用信号量表示,该信号量可初始化 为资源实例数。想获得资源时使用P操作,每次请求成功它都要减少信号量的值。 信号量的值减少至0时(无空闲可用资源),下一个P操作将被阻塞。释放资源时使用V操作,它增加信号量的值,同时唤醒被阻塞的进程。x.wait操作意味着调用该操作的进程将被挂起,直至另一进程执行x.signal操作,故x.signal操作仅仅重新启动一个被挂起的进程,若无挂起进程,则signal操作相当于空操作,即不改变x的状态,这不同于V操作,V操作是总要影响信号量操作的。)解析:42. 假设有一台多道程序的计算机,每个作业都有相同的特征,即在一个计算周期T里,1/0占用第一和第四个1/4周期,处理器占有第二和第三个1/4周期。而各个作业占用的。I/O设备各不相同。如果计算机被任何一个作业单独占用的话,完成作业总共需要1个计算周期。假设使用时间片轮转进程调度策略,而且I/O操作能与处理器操作重叠,不同的 I/O设备可以同时运行。定义以下变量:周转时间=完成一个作业的实际时间吞吐量=每周期T完成的作业的数量的平均值处理器使用率=处理器处于活动状态(非等待)的时间在总时间中占的百分比若有两个作业同时要求运行,作业I的优先级较高,作业都只运行一次。进程状态转换时的操作系统开销忽略不计,且时间片的大小远小于To计算:(1)作业1和作业2各自的周转时间。 从作业开始运行,到两个作业都已完成的瞬间,计算机系统的吞吐量和处理器使用率。(分数:1.00 ) 正确答案:(设t=1/4 T,则在第一个t中,作业1和作业2各自运行第一个1/4周期;第二个t和第三个 t中,作业1占用CPU作业2处于就绪态;第四个t中,作业1完成I/O,作业2获得CPU第五个t中, 作业2继续占用CPU,第六个t中,作业2完成I/O。由上分析可知:作业1的周转时间为T;作业2的周转时间为3/2T ;吞吐量为2/(3/2)=4/3;处理器的使用率为:2/3 o )解析:43. 在如图2-12所示的状态转换图中椭圆形框表示进程的状态,带箭头的直线表示状态的转换。试写岀状 态AE的进程状态名称。(分数:1.00 )正确答案:(在如图2-12所示的状态图上,运行态和就绪态之间是双向箭头,其他都是单向箭头;只有就 绪态可以指向运行态, 其他状态都只能被运行态指向,因此可判断岀图2-12中,C是运行态,B是就绪态;根据状态转换图2-12可知E是阻塞态;因进程在内存中就绪态之前只能是创建,因此A是创建态;从运行态岀发,除了因等待资源进入等待态,还有一种情况就是进程运行结束离开内存,因此D是完成态。)解析:44. 请
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!