操作系统第二章 习题

操作系统第二章 习题

ID:45094579

大小:150.00 KB

页数:15页

时间:2019-11-09

操作系统第二章 习题_第1页
操作系统第二章 习题_第2页
操作系统第二章 习题_第3页
操作系统第二章 习题_第4页
操作系统第二章 习题_第5页
资源描述:

《操作系统第二章 习题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、2021/8/4计算机操作系统西安交通大学电信学院2021/8/4进程的描述与控制关于并发进程,以下叙述不正确的是()A)若系统中存在一组可同时执行的进程,则该组进程具有并发性B)并发进程之间一定是有交往的C)无关并发进程一定没有共享变量D)有交往的并发进程一定共享某些资源进程在等待系统分配处理器以便运行时,处于()A)等待态B)就绪态C)运行态D)以上都不是不属于进程的组成部分的是()A)程序B)数据集C)进程控制快D)系统软件某系统的进程状态转换图如图所示请说明:运行就绪阻塞4213请说明引起各种状态转换的典型事件有哪些?当我们观察系统中某些进程时

2、,能够看到某一进程产生的一次状态转换能引起另一进程作一次状态转换,在什么情况下,当一个进程发生转换3时能立即引起另一个进程发生转换1?试说明是否会发生下述因果转换:213241进程的互斥与同步从下面对临界区的论述中,选择出两条正确的论述:(1)临界区是指进程中用于实现进程互斥的那段代码。(2)临界区是指进程中用于实现进程同步的那段代码。(3)临界区是指进程中用于实现进程通信的那段代码。(4)临界区是指进程中用于访问共享资源的那段代码。(5)临界区是指进程中访问临界资源的那段代码。(6)若进程A与进程B必须互斥地进入自己的临界区,则进程A出于对应得

3、临界区内时,仍有可能被进程B中断。(7)若进程A与进程B必须互斥地进入自己的临界区,则进程A出于对应得临界区内时,便不能被进程B中断。用信号量S实现对系统中4台打印机的互斥使用,S.value的初值应设置为(A),若S.value的当前值为-1,则表示S.L队列中有(B)个等待进程。A:(1)1;(2)0;(3)-1;(4)4;(5)–4。B:(1)0;(2)1;(3)2;(4)3;(5)4;(6)5;(7)6;设有5个哲学家,共享一张放有5把椅子的桌子,每人分得1把椅子。但是,桌子上总共只有5支筷子,在每人两边分开各放一支。哲学家们在肚子饥饿时才试图

4、分两次从两边拾起筷子就餐。条件:1)只有拿到两支筷子时,哲学家才能吃饭。2)如果筷子已在他人手上,则该哲学家必须等待到他人吃完之后才能拿到筷子。3)哲学家在自己未拿到两支筷子吃饭之前,决不放下自已手中的筷子。要求:描述一种没有人饿死(永远拿不到筷子)算法。设信号量c[0]~c[4],初值均为1,分别表示i号筷子被拿(I=0,1,2,3,4), 奇数号哲学家先取右边的筷子,偶数号哲学家先取左边的筷子。第i个哲学家要吃饭:beginif(imod2==0){p(c[i]);p(c[i+1mod5]);eat;v(c[i]);v(c[i+1mod5]);}e

5、lse{p(c[i+1mod5]);p(c[i]);eat;v(c[i+1mod5]);v(c[i]);}end;嗜睡的理发师问题一个理发店有一个有N张沙发的等候室和一个放有一张理发椅的理发室组成。没有顾客要理发时,理发师便去睡觉。当一个顾客走进理发店时,如果所有的沙发都已被占用,他便离开理发店;否则如果理发师正在为顾客理发,则该顾客就找一张空沙发坐下等待;如果理发师因无顾客正在睡觉,则由新到的顾客唤醒理发师为其理发。在理发完成后,顾客必须付费,直到理发师收费后才能离开理发店。试用信号量实现这一同步问题。需要设置一个整型变量count用来对理发店中的顾

6、客进行计数,并须设置7个信号量,其中:mutex用来实现顾客进程对count变量的互斥访问,其初值为1;sofa是对应于等候室中N张沙发的资源信号量,其初值为N;empty表示是否有空闲的理发椅,其初值为1;full表示理发椅上是否坐有等待理发的顾客,其初值为0;cut用来等待理发的完成,其初值为0;payment用来等待付费,其初值为0;receipt用来等待收费,其初值为0。具体的算法描述如下:intcount=:integer=0;flag=1;Semaphoremutex=1,sofa=n,empty=1,full=0,cut=0,paymen

7、t=0,receipt=0;顾客:guest{wait(mutex);if(count>n){signal(mutex);exitshop;}//如果理发椅和沙发都坐有顾客则离开else{count++;//顾客数加1if(count>1)//如果理发椅上已经坐有顾客{signal(mutex);wait(sofa);//选择沙发sitonsofa;//入座沙发wait(empty);//等待理发椅空闲getupfromsofa;//从沙发上起身signal(sofa);//腾出空闲沙发}else//目前只有一位顾客{signal(mutex);wai

8、t(empty);}sitonthebaber_chair;//入座理发椅signal(ful

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。