操作系统 第二章【进程管理】【MOOC答案】

目录

第1题

第2题

第3题

第4题


第1题

1 ( 20分 )

1.      根据下面程序段包含的语句,画出它的前趋图。

int a,b,c,d,e;

int u,v,w,x,y,z;

  S1: u = a+b;

  S2: v = (c-d)*e;

S3: w = u+a;

  S4: x = u-v;

S5: y = w*x;

  S6: z = y/e;

第2题

2( 20分 )简述进程的定义与特征.

进程是程序在一个数据集合上的运行过程,是系统进行资源分配和处理机调度的独立单位。

进程的特征是:动态性,并发性,独立性,异步性。

结构特征:由程序段、数据集合和PCB三部分组成。

第3题

3 ( 20分 )

1.        有没有这样的状态转换,为什么? 

(1) 等待—>运行;

(2) 就绪—>等待

得分指导:

(1)没有。(4分)因为进程处于“等待”状态,表示该进程由于发生某事件导致其等待,只有当其锁等待的事件发生,欠缺的运行条件被满足,该进程才能转换成“就绪”状态,不能直接转化成“运行状态”。(6分)

(1)没有。(4分)因为进程处于“就绪”状态,表示该进程除了CPU之外的其他运行条件都已经具备,只有当其“运行”后才能转换为“等待”状态。(6分)

第4题

4 ( 40分 )

1.      设有6个进程,其执行的先后流图如下图1所示。用wait、signal操作实现其同步。(提示,每次节点程序执行时,首先分析是否有前驱,如果有用wait操作;然后执行程序本身;最后看是否有后继,如果有用signal操作)。

 图1

得分指导:

main(){

       semaphore a,b,c,d,e,f,g;

       a.value=b.value=c.value=d.value=e.value=f.value=0;

       cobegin

             P1();  P2(); P3(); P4(); P5(); P6();

       coend

}

P1(){S1;signal(a);signal(b);sigan(c);}

P2(){wait(a);S2;signal(d);}

P3(){wait(b);S3;signal(e);}

P4(){wait(c);S4;signal(f);}

P5(){wait(d);wait(e);S5;signal(g);}

P6(){wait(f);wait(g);S6;}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部