国家开放大学《操作系统》形考任务(应用题)参考答案1.用如图所示的进程状态转换图能够说明有关处理机管理的大量内容
图进程状态转换图试回答:① 什么事件引起每次显著的状态变迁
② 下述状态变迁因果关系能否发生
参考答案:①就绪→运行:CPU 空闲,就绪态进程被调度程序选中
运行→就绪:正在运行的进程用完了本次分配给它的 CPU 时间片
运行→阻塞:运行态进程因某种条件未满足而放弃对 CPU 的占用,如等待读文件
阻塞→就绪:阻塞态进程所等待的事件发生了,例如读数据的操作完成
② 下述状态变迁:(A)2→1:可以
运行进程用完了本次分配给它的时间片,让出 CPU,从就绪队列中选一个进程投入运行
(B)3→2:不可以
任何时候一个进程只能处于一种状态,它既然由运行态变为阻塞态,就不能再由运行态变为就绪态
(C)4→1:可以
某一阻塞态进程等待的事件出现了,而且此时就绪队列为空,该进程进入就绪队列后马上又被调度运行
2.系统中只有一台打印机,有三个用户的程序在执行过程中都要使用打印机输出计算结果
设每个用户程序对应一个进程
问:这三个进程间有什么样的制约关系
试用 P、V 操作写出这些进程使用打印机的算法
参考答案:因为打印机是一种临界资源,所以这三个进程只能互斥使用这台打印机,即一个用户的计算结果打印完之后,另一个用户再打印
设三个进程分别为 A、B 和 C
设一个互斥信号量 mutex,其初值为 1
进程 A进程 8进程 CV(mutex}V(mute×)V(mulex)3.判断下列同步问题的算法是否正确
若有错,请指出错误原因并予以改正
① 设 A,B 两个进程共用一个缓冲区 Q,A 向 Q 写入信息,B 从 Q 读出信息,算法框图如图左侧所示
② 设 A,B 为两个并发进程,它们共享一个临界资源
其运行临界区的算法框图如图右侧所示
参考答案:① 这个算法不对