四川大学操作系统期中试题及答案
时间:2025-04-03
时间:2025-04-03
2014年操作系统期中考试试题
操作系统期中考试试题
1、请各举一个进程的例子和程序的例子。
答:可以同时用word打开多个文档,word就是程序,用word打开n个文档对应的就是n个进程。进程包括程序和数据两部分,word是一段保存在磁盘上的程序,待打开的文档内容就是数据,调用word程序来打开一篇文档就形成一个进程。 2、进程有哪些基本状态?画出状态之间的转换关系图,举例说明引起进程状态转换的事件。
答:进程基本状态包括新建、就绪、运行、阻塞和结束5个(图略)。转换关系包括: 新建 就绪 确认
就绪 运行 CPU调度
运行 就绪 时间片用完、中断 运行 阻塞 等待事件/请求IO 阻塞 就绪 事件出现/IO完成 运行 结束 终止
3、设内存中有P1, P2, P3三道进程,并按照P1, P2, P3的优先级次序运行,其中内部计算和IO操作时间由下表给出(CPU计算和IO资源都只能同时由一个进程占用):
P1: 计算60ms IO 80ms 计算20ms P2: 计算120ms IO 40ms 计算40ms P3: 计算40ms IO 80ms 计算40ms
请问完成三道程序并发执行比单道运行可以节省多少时间? 答:
由于每个进程都有三个阶段:计算、IO、计算,我们将这三次计算命名为A、B、C。 60ms 80ms 20ms 40ms 40ms 40ms 40ms 40ms P1(A)--> P1(B) --> P1(C)
P2(A) P2(A) --> P2(B) --> P2(C) P3(A) --> P3(B) P3(B) --> P3(C) 最终耗时:60+80+20+40+40+40+40+40=360ms; 全串行执行耗时:160+200+160=520ms; 节约了520ms-360ms=160ms。
4、有5 个任务A, B, C, D, E,它们几乎同时先后达到,预计它们运行的时间为10, 6, 2, 4, 8分钟。 其优先级分别为3, 5, 2, 1, 4,这里5 为最高优先级。对下列每一种调度算法,计算其平均进程周转时间并写出调度序列(进程切换开销可不考虑)。
①先来先服务算法 ②高优先级调度算法。(非抢占式) ③时间片轮转调度算法。(时间片2min) 答:
①先来先服务。调度序列:A ->B-> C-> D-> E T=(10+16+18+22+30)/5=19.2 ②优先级调度。(非抢占式)调度序列:B ->E-> A->C -> D T=(6+14+24+26+30)/5=20 ③时间片轮转调度。(时间片2min)
第一轮:(A B C D E)
2014年操作系统期中考试试题
第二轮:(A B D E) 第三轮:(A B E) 第四轮:(A E) 第五轮:(A )
T=(30+22+6+16+28)/5=20.4
***5、有一个内存中只能装入两道作业的批处理系统,作业调度采用短作业优先算法,进程调度采用以优先级为基础的抢占方式调度算法。有如下表所示的作业序列,表中所列的优先数是指进程调度的优先数,优先数越小优先级越高。
①画出4个作业的调度和运行情况。
②列出所有作业进入内存的时刻以及结束时刻。 ③计算作业的平均周转时间。(从到达时刻算起) 答:
①第一小题画图(略)
②A、B、C、D各作业进入内存的时刻分别是10:00、10:20、11:10、10:50;它们的完成时刻分别是11:10、10:50、12:00、12:20。
③A、B、C、D的周转时间分别是70分钟、30分钟、90分钟、90分钟,故它们的平均周转时间为70分钟。
6、3个进程共享4个同样类型的资源,每个进程最大需要2个资源,请问该系统是否会因为竞争该资源而死锁?请说明原因。
答:该系统不会因为竞争该类资源而死锁。这是因为,必有一个进程可获得2个资源,故能顺利完成,并释放出其所占用的2个资源给其他进程使用,让他们也能顺利完成。
7
请回答:
② 该状态是否安全?
②当进程P2提出请求Request(1,2,2,2)后,系统能够将资源分配给它?(指优先分给P2。。后系统还安不安全)
③如果系统立刻满足P2的上述请求,则系统是否立刻进入死锁状态?
答:①利用安全性算法对上面的状态进行分析,找到一个安全序列{P0,P3,P4,P1,P2},故系统是安全的。
2014年操作系统期中考试试题
Request2(1,2,2,2)<= Need2(2,3,5,6) Request2(1,2,2,2)<= Available(1,6,2,2)
系统先假定可为P2分配资源,并修改Available、Allocation2和Need2:
Available=(0,4,0,0) Allocation2=(2,5,7,6) Need2=(1,1,3,4)
进行安全性检查:测试对于所有的进程,条件Need2<= Available(0,4,0,0)都不成立,即Available不能满足任何进程要求,故系统进入不安全状态。因此进程P2提出请求Request(1,2,2,2),系统不能分配资源给它。
***③系统立即满足进程P2的请求(1,2,2,2)后,并没有马上死锁。因为,此时上述进程并没有申请新的资源而进入阻塞状态,只有当上述进程提出新的请求,导致所有未执行完的多个进程因得不到资源而阻塞并形成循环等待链时,系统才进入死锁状态。
7、有2个并发进程P1, P2,其程序代码如下:(没有P、V操作?)
P1() {
X = 1; Y = 2; if(X > 0)
Z = X + Y; else
Z = X -Y; print Z; } P2() {
X = -1; A = X + 3; X = A + X; B = A + X; C = B * B; Print C; }
①可能打印出的Z值有哪些?
②可能打印出的C值有哪些? (其中X为P1,P2的共享变量) 答:
2014年操作系统期中考试试题
① Z是值有3,-3,5,7。 ② C的值有9,25,81。
8、假设有一个系统有3个抽烟者进程和1个供应者进程。每个抽烟者不停地卷烟并抽掉它,但是要卷起并抽掉 …… 此处隐藏:3165字,全部文档内容请下载后查看。喜欢就下载吧 ……