操作系统(第二版)课后习题答案.docx

什么是操作系统?其主要功能是什么? 操作系统是控制和管理计算机系统各种硬件和软件资源,有效组织多道程序运行的系统软件 (或程序集合)?是用户和计算机直接的程序接口. 在某个计算机系统中,有一台输入机和一台打印机,现有两道程序投入运行,程序A、B 同时运行,A略早于B。A的运行轨迹为:计算50ms、打印100ms,再计算50ms、打印100ms, 结束。B的运行轨迹为:计算50ms、输入80ms,再计算100ms,结束。试说明: 两道程序运行时,CPU是否空闲等待?若是,在那段时间段等待? 300程序A、B是否有等待CPU的情况?若有,指出发生等待的时刻。 300 50 0 7 5( ) 100 ! 釦 100 .由 100 ] 50 100 150 200 250 cpu有空闲等待.在100ms 150ns的时候. 程序A没有等待cpu,程序B发生等待的时间是180ms200nis. 设公共汽车上,司机和售票员的活动如下: 司机的活动:启动车辆;正常行车;到站停车。 售票员的活动:关车门;售票;开车门。 在汽车不断的到站、停车,行驶过程中,用信号量和P. V操作实现这两个活动的同步 关系。 semaphore sit s2; sl=0;s2 0; cobegin 司机();售票员(); coend process 司机() { while(true) ( P(sl); 启功车辆; 正常行车; 到站停车; V(s2); process售票员() ( while(true) 关车门; V(sl): 售票; P(s2); 开车门; 上下乘客; I } 设有三个进程P、Q、R共享一个绶冲区,该缓冲区一次只能存放一个数据,P进程负责循 环地从磁带机读入数据并放入缓冲区,Q进程负责循环地从缓冲区取出P进程放入的数据进 行加工处理,并把结果放入缓冲区,R进程负责循环地从缓冲区读出Q进程放入的数据并在 打印机上打印。请用信号量和P、V操作,写出能够正确执行的程序。 semaphore sp.sq.sr; int buf:sp I;sq 0;sr-0; cobegin process P() { while(true) { 从感带读入数据; P(sp); Buf data: V(sq); } } process Q() ( while(true) ( P(sq): data二buf: 加工data: buf二data; V(sr); process R () ( while(true) { P(sr); data buf; V(sp); 打印数据; coend. 简述计数信号量的值与资源使用情况的关系。 当计数信号量大于。时,表示可用资源的数量:当它的值小于。时.其绝对值表示等待使用该 资源的进程个数. 假定某计算机系统有Rj R?两类可再用资源(其中R,有两个单位,有一个单位)■它们 被进程p,、巳所共享,且已知两个进程均以下列顺序使用两类资源: —申请Ri—申请Rr*申请Rl釋放Ri—释放R」一释放Rl 试求出系统运行过程中可能到达的死锁点.并画出死锁点的资源分配困。 进程P1占有一个R1?—个R2,进程P2占有一个R1. 进程P1占用一个R1,进程P2占有一个R1 .—个R2 系统有同类资源m个,被n个进程共享.冋:当mn和m^n时.每个进程最多可以请 求多少个这类资源,使系统一定不会发生死锁? mWn时,每个进程最多请求1个这类资源时不会死锁;当mn时.如果m/n商为k, 余数为t:若t为0,每个进程最多请求k个.若t不为0,每个进程最多请求卜1个?则 统不会发生死锁。 设当前的系统状态如下,此时Available=(L1.2). 进程 Max Allocation R1 R2 R3 Rl R2 R3 P1 3 2 2 1 0 0 P2 6 1 3 5 1 1 P3 3 1 4 2 1 1 P4 4 2 2 0 0 2 (1),计算各个进程还需要的资源数 (2).系统是否处于安全状态?为什么? 、进程P2发出请求向量reqUest2=(1.0.1),系统能把资源分配给它吗? 、若在进程P2申请资源后,P1发出请求向量requestl=(1.0,l),系统能把资源分配 给它吗? .若在进程P1申请资源后,P3发出请求向量request3=(0.0.1),系统能把资源分配 给它吗? (1) R1 K2 R3 1M 2 2 3 P2 1 2 P3 1 3 P4 4 2 0 系统处于安全状态?存在安全序列:P2fPl-P3fP4? 系统能把资源分配给它?存在安全序列:P2-P1-P3-P4. 不能,因为资源不足. 不能?因为这样做会让系统处于不安全状态. 有5个批处理作业AE均已到达计算中心,其运行时间分别为2min.4min.6min.8m

文档评论(0)

1亿VIP精品文档

相关文档