- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
复习题问答题部分New
第二章
1、已知一个求值公式(3A+2B)/(A+5B2+C),若A、B、C已赋值,试画出该公式求值过程的前趋图。
解:令 S1:X1 = 3A;
S2:X2 = 2B;
S3:X3 = X1+X2;
S4:X4 = 5B2;
S5:X5 = A+X4+C;
S6:X6 = X3/X5
则求值过程的前趋图为:
2、已知一个求值公式(B2+AB)/(5B+A),若A、B已赋值,试画出该公式求值过程的前趋图。
解:令 S1:X1 = B2;
S2:X2 = AB;
S3:X3 = X1 + X2;
S4:X4 = 5B;
S5:X5 = X4 + A;
S6:X6 = X3 / X5。
则求值过程的前趋图为: (自己画出)
3、写出实现两个进程单向同步问题的伪码。(参考讲义)
3、写出通过信号量实现生产进程和消费进程(单缓冲区)双向同步的伪码。(参考讲义)
解:
定义信号量:
var s1,s2: semaphore :=1,0;
生产进程伪码:
Process P:
begin
while(true) do
begin
生产一个产品;
wait(s1); //P操作,等待可以生产的信号量
将产品放入缓冲区。。。。。。//其他操作
singal(s2); //V操作,发送可以消费的信号量
end
end
消费进程伪码:
Process C:
begin
while(true) do
begin
wait(s2); //P操作,等待可以消费的信号量
从缓冲区中取出产品进行消费。。。。。。//其他操作
singal(s1); //V操作,发送可以生产的信号量
end
end
4、写出通过信号量实现进程1和进程2互斥访问共享资源(临界资源)的伪码。(参考讲义)
解:定义信号量:
var s: semaphore :=1;
访问资源进程1伪码:
Process P1:
begin
while(true) do
begin
wait(s); //P操作,申请访问资源权限的的信号量
临界区代码; //其他访问资源操作
singal(s); //V操作,释放访问资源权限的信号量
end
end
访问资源进程2伪码:(同P1类似)
Process P2:
begin
while(true) do
begin
wait(s); //P操作,申请访问资源权限的的信号量
临界区代码; //其他访问资源操作
singal(s); //V操作,释放访问资源权限的信号量
end
end
5、写出具有缓冲池(n个缓冲区)的生产者-消费者问题的伪码。(参考讲义、教材)
6、写出公共汽车司机和售票员同步问题的伪码。(参考讲义)
解:信号量定义
var s1,s2:semaphore:=0,0;
//s1为控制能否行车的信号量
//s2为控制能否开门的信号量
司机进程:
Process Driver:
begin
while(true) do
begin
wait(s1);
加油行车;
到站停车;
singal(s2);
end
end
售票员进程:
Process Conductor:
begin
while(true) do
begin
关车门;
singal(s1);
售票;
wait(s2);
开车门;
end
end
7、读者-写者同步问题(参考讲义和教材)
第三章
1、系统有5个进程,其就绪时刻(指在该时刻已经在就绪队列中就绪)、服务时间如下表所示。当分别采用先来先服务(FCFS)和短进程优先(SPF)算法时,画出调度过程,并计算平均周转时间和平均带权周转时间。(参考P91-92)
进程 就绪时刻 服务时间 P1 0 2 P2 2 5 P3 4 3 P4 6 6 P5 8 1 解:(1) 采用FCFS算法时,调度过程如下表所示:
进程 就绪时刻 服务时间 开始执行时间 完成时间 周转时间 带权周转时间 P1 0 2 0 2 2 1 P2 2 5 2 7
文档评论(0)