操作系统课后练习精选

上传人:cn****1 文档编号:564603425 上传时间:2023-06-18 格式:DOCX 页数:14 大小:105.95KB
返回 下载 相关 举报
操作系统课后练习精选_第1页
第1页 / 共14页
操作系统课后练习精选_第2页
第2页 / 共14页
操作系统课后练习精选_第3页
第3页 / 共14页
操作系统课后练习精选_第4页
第4页 / 共14页
操作系统课后练习精选_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《操作系统课后练习精选》由会员分享,可在线阅读,更多相关《操作系统课后练习精选(14页珍藏版)》请在金锄头文库上搜索。

1、1. 什么是操作系统?它的主要功能是什么?答:操作系统是用来管理计算机系统的软、硬件资源,合理地组织计算机的工作流程,以方便用户使用的程序集合;其主要功能有进程管理、存储器管理、设备管理和文件管理功能。2. 什么是分时系统?什么是实时系统?试从交互性、及时性、独立性、多路性 和可靠性几个方面比较分时系统和实时系统。答:分时系统:一个计算机和许多终端设备连接,每个用户可以通过终端向计算机发出指令,请求完成某项工作,在这样的系统中,用户感觉不到其他 用户的存在,好像独占计算机一样。实时系统:对外部输入的信息,实时系统能够在规定的时间内处理完毕并作 出反应。比较:(1)交互性:实时系统具有交互性,但

2、人与系统的交互,仅限于访问系统中某些特定的专用服务程序。它不像分时系统那样向终端用户提供数据处理、资源共享等服务。实时系统的交互性要求系统具有连续人机对话的能力,也就是说,在交互的过程中要对用户得输入有一定的记忆和进一步的推 断的能力。(2)及时性:实时系统对及时性的要求与分时系统类似,都以人们能够接受 的等待时间来确定。而分时系统则对及时性要求更高。(3)独立性:实时系统与分时系统一样具有独立性。每个终端用户提出请求 时,是彼此独立的工作、互不干扰。(4)多路性:实时系统与分时一样具有多路性。操作系统按分时原则为多个终端用户提供服务,而对于实时系统,其多路性主要表现在经常对多路的现场信息进行

3、采集以及对多个对象或多个执行机构进行控制。(5) 可靠性:分时系统虽然也要求可靠性,但相比之下,实时系统则要求系 统高度可靠。9设内存中有三道程序,A, B, C,他们按ATBY的先后次序执行,它们进行 “计算”和“I/O操作”的时间如表1-2所示,假设三道程序使用相同的I/O设备。表 1-2 三道程序的操作时间1) 试画出单道运行时三道程序的时间关系图,并计算完成三道程序要花多少 时间。A BB C C计算IIIIIIII11 ! III1IIIIII1 1 ; II:ABC :I/O操作I I I III1IIIIII1IIIIII|:III; :I !60 170 20020590140

4、 160190 总时间=20+30+10+30+50+20+10+20+10=2002) 试画出多道运行时三道程序的时间关系图,并计算完成三道程序要花多长 时间。程序A程序B程序C总时间=130第二章5假设系统就绪队列中有10个进程,这10个进程轮换执行,每隔300ms轮换一次,CPU在进程切换时所花费的时间是10ms,试问系统化在进程切换上的开销占系统整个时间的比例是多少?答:因为每隔300ms换一次进程,且每个进程切换时所花费的时间是10ms,则系统化在进程切换上的开销占系统整个时间的比例是10/(300+10)=3.2% 6试述线程的特点及其与进程之间的关系。答:(1)特点:线程之间的通

5、信要比进程之间的通信方便的多;同一进程内的线程切换也因为线程的轻装而方便的多。同时线程也是被独立调度的分配的;(2)线程与进程的关系:线程和进程是两个密切相关的概念,一个进程至少拥有一个线程,进程根据需要可以创建若干个线程。线程自己基本上不拥有 资源,只拥有少量必不可少的资源(线程控制块和堆栈)7根据图 2-18,回答以下问题。(1)进程发生状态变迁 1、3、4、6、7 的原因。答:1表示操作系统把处于创建状态的进程移入就绪队列;3表示进程 请求I/O或等待某事件;4表示进程用行的时间片用完;6表示1/0完 成或事件完成;7表示进程完成。(2) 系统中常常由于某一进程的状态变迁引起另一进程也产

6、生状态变迁, 这种变迁称为因果变迁。下述变迁是否为因果变迁=32,45,72,36, 是说明原因。答:3一2是因果变迁,当一个进程从运行态变为阻塞态时,此时CPU空闲, 系统首先到高优先级队列中选择一个进程。4-5是因果变迁,当一个进程运行完毕时,此时CPU空闲,系统首先到高 优先级队列中选择进程,但如果高优先级队列为空,则从低优先队列中选择一个 进程。7-2是因果变迁,当一个进程运行完毕时,CPU空闲,系统首先到高优先 级队列中选择一个进程。3-6不是因果变迁。一个进程阻塞时由于自身的原因而发生的,和另一个 进程等待的时间到达没有因果关系。(3) 根据此进程状态转换图,说明该系统CPU调度的

7、策略和效果。答:当进程调度时,首先从高优先级就绪队列选择一个进程,赋予它的时间片为100ms。如果高优先级就绪队列为空,则从低优先级就绪队列选择进程,并 且赋予该进程的时间片为 500ms。这种策略一方面照顾了短进程,一个进程如果在100ms运行完毕它将退出系统, 更主要的是照顾了 I/O量大的进程,进程因I/O进入阻塞队列,当I/O完成后它 就进入了高优先级就绪队列,在高优先级就绪队列等待的进程总是优于低优先级 就绪队列的进程。而对于计算量较大的进程,它的计算如果在 100ms 的时间内 不能完成,它将进入低优先级就绪队列,在这个队列的进程被选中的机会要少, 只有当高优先级就绪队列为空,才从

8、低优先级就绪队列选择进程,但对于计算量 大的进程,系统给予的适当照顾时间片增大为 500ms。8回答以下问题。(1)若系统中没有运行进程,是否一定没有就绪进程?为什么?答:是,因为当CPU空闲时,系统就会在就绪队列里调度进程,只有 当就绪队列为空时,系统中才没有运行程序。(2)若系统中既没有运行进程,也没有就绪进程,系统中是否就没有阻塞进程?解释。答:不一定,当运行的程序都因为请求I/O或等待事件时而进入阻塞, 系统中就没有就绪进程。(3) 如果系统采用优先级调度策略,运行的进程是否一定是系统中优先级 最高的进程?为什么?答:不一定,若优先级高的进程进入阻塞状态时,而且优先级高的就 绪队列里没

9、有等待的进程,这时就会调度优先级低的就绪队列的进程 9假如有以下程序段,回答下面的问题。S1: a=3-x;S2: b=2*a;S3: c=5+a;(1) 并发程序执行的 Bernstein 条件是什么?答:若P1与P2R并发执行,当且仅当 R(P1) n W(P2) U R(P2) n W(P1) uW(P1)GW(P2)=时才满足。(2) 试画图表示它们执行时的先后次序。利用Bernstein条件证明,S1、S2和S3哪两个可以并发执行,哪两个不能。答:R(s1)=x,W(s1)=a;R(s2)=a,W(s2)=b;R(s3)=a,W(s3)=c;.R(s1)nW(s2)UR(s2)nW(

10、s1)UW(s1)nW(s2)=a,则 si 与 s2 不能并发执行;(2) . R(s1)nW(s3)UR(s3)nW(s1)UW(s1)nW(s3)=a则 si 与 s3 不能并发执行;(3) . R(s2)nW(s3)UR(s3)nW(s2)UW(s2)nW(s3)=则 s2 与 s3 可以并发执行。第三章1设有一个售票大厅,可容纳 200人购票。如果厅内不足200 人则允许进入超过则在厅外等候;售票员某时只能给一个购票者服务,购票者买完票后就 离开。试问:(1) 购票者之间是同步关系还是互斥关系?答:互斥关系。(2)用P、V操作描述购票者的工作过程。semaphore empty=20

11、0;semaphore mutex=1;semaphore waiting=0;void buy() p(waiting);p(mutex);买票;-XX 7JK /v(mutex);v(empty);void waiting()p(empty);等待; waiting+;2有4个进程P1、P2、P3、P4共享一个缓冲区,进程P1向缓冲区存入消息, 进程 P2、P3、P4 从缓冲区中取消息,要求发送者必须等三个进程都取过本 消息后才能发送下调消息。缓冲区内每次只能容纳一个消息,用 P、V 操作 描述四个进程存取消息的情况。答:semaphore p1=0 ; semaphore p2, p3,

12、p4=1 ;semaphore cout=0;semaphore mutex=1; void main()P(p2);P(p3);P(4);V(cout);write p1()P(p1);P(metux);P(cout);存入消息;V(p1);V(metux);Read p2() P(mutex);P(p1);读消息;V(p1);V(p2);V(metux);Read p3() P(mutex);P(p1);读消息;V(p1);V(p3);V(metux);Read p4() P(mutex);P(p1);读消息;V(p1);V(p4); V(metux);3分析生产者一消费者问题中多个P操作

13、颠倒引起的后果答: semaphore mutex=1;semaphore empty=n;semaphore full=0; int i,j;ITEM buffern;ITEM data_p,data_c;void pr oduce r( )/* 生产者进程*/void consumer() /*消费者进程*/while(true)while(true) P(mutex) ;P(mutex);P(full);P(empty);data_c=bufferj;bufferi=data_p;j=(j+1)%n;i=(i+1)%n;V(mutex);V(mutex);V(empty);V(full)

14、;若把生产者进程的P操作颠倒,消费者进程的P操作颠倒(如图),则生产者 进程执行到V(mutex)时,消费者就可以执行P(mutex)但由于full=O,消费 者进程不可执行P(full);当生产者进程执行完 V(full)后,full=1,但由于 mutex=O,消费者进程无法执行,造成死锁。第四章 1系统中有5个资源被4个进程所共享,如果每个进程最多需要2个这种资源,试问系统 是否会产生锁死? 答:不会产生死锁;因为因为资源数可以满足进程的需要,当其中的一个进程争取到剩 下的一个资源可以执行,当执行完成以后会释放资源,供其他进程使用,所以不会产生死锁。2 .计算机系统有8台磁带机,由N个进

15、程竞争使用,每个进程最多需要3台。问:N为 多少时,系统没有死锁的危险?答:当n为1、2、3时,没有死锁的危险;因为当n小于3时,每个进程分配2台磁带 机,还有磁带机剩余,那么当其中的一个进程得到剩余的磁带机则可运行,运行结束后会释放磁带机,供其他进程使用,系统不会有死锁的危险;当n为4时,每台分配2台时没有剩余,则会产生死锁,当大于5时同样会死锁。3.系统有5个进程,它们的到达时间和服务时间如表4-8所示。新进程(没有运行过)与 老进程(运行过的进程)的条件相同时,假定系统选新进程运行。表 4-8 进程情况若按先来先服务(FCFS)、时间片轮法(时间片q=1)、短进程优先(SPN)、最短剩余 时间优先(SRT,时间片q=1)、响应比高者优先(HRRN)及多级反馈

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号