- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.
.
2.进程A1,A2,...,Anl通过m个缓冲区向进程B1,B2,...,Bn2不断地发送消息,发送和接收工作遵循如下规则:
(1)每个发送进程一次发送一个信息,写入一个缓冲区,缓冲区大小与消息长度一样;
(2)对每一个消息,B1,B2,...,Bn2都需各接收一次,读入各自的数据区内;
(3)m个缓冲区都满时,发送进程等待,没有可读的消息时,接收进程等待。
试用P、V操作组织正确的发送和接收操作。
解答:
这是一个变形的生产和消费问题。每个缓冲区只需写一次,但需读n2次。可以把一组缓冲区看做n2组缓冲区,这样,每个生产者需要同时写n2个缓冲区组中相应的n2个缓冲区,而每一个消费者只需读它自己对应的那组缓冲区中的单元。生产者须在n2个缓冲区都为空闲是方可写入,这时,就可以用n2组信息量(avail,free )来实现这一流程,具体流程如下:
BEGIN
integer mutex,avail[n2],full[n2];
integer I;
mutex : =1;
for I :=1 to n2 do
begin
avail [I] := m;
full [I] := 0;
end;
procedure send[M]
integer I ;
begin
for I :=1 to n2 do
begin
P( avail [I]);
end ;
P (metux);
将消息放入缓冲区;
for I :=1 to n2 do
begin
V(full [I]);
end ;
V (metux)
end ;
procedure receive(M,I)
begin
P (full[I]);
P (metux);
从缓冲区中取消息;
V (avail [I]);
V (mutex);
end ;
Cobegin
Ai:begin
……..
send [M]
………
end
Bi;begin
…….
Receive(M,i);
………
end;
Coend;
end;
3.设系统中仅有一类数量为M的独占型资源,系统中有N个进程竞争该类资源,其中各进程对该类资源的最大需求数为W,当M,N,W分别取下列值时,试判断哪些情况会发生死锁,为什么?
M=2,N=2,W=1
M=3,N=2 W=2
M=3,N=2,W=3
M=5 N=3 W=2
M=6 N=3 W=3
解答:
不会发生死锁。因为系统中只有两个进程,每个进程的最大需求量为1,
且系统中资源总数为2,系统能够满足两个进程的最大资源需求量,故不会发生死锁。
不会发生死锁。因为系统中有两个进程,每个进程的最大资源需求量为2,
且系统中资源总数为3,无论如何分配,两个进程中必有一个进程可以获得两个资源,该进程将顺利完成,从而可以将分配给它的资源归还给系统,使另一个进程也能顺利执行完成,故不会发生死锁。
可能发生死锁。因为系统中有两个进程,每个进程的最大资源需求量为3,
且系统中资源总量为3,若系统先将全部资源分配给其中一个过程,则该进程将顺利完成,从而可将分配给它的资源归还给系统,使另一进程也能顺利完成,以这种方式分配资源时不会发生死锁;若系统将两个资源分配给一个过程,而剩余的一个资源分配给另一个进程,则系统中没有空闲资源,而每个进程都需要等待资源,此时发生死锁。
不会发生死锁。因为系统中有3个过程,每个进程的最大资源需求量为2,
且系统中资源总量为5,无论如何分配,3个进程中必有一个进程可以获得2个资源,该进程将顺利完成,从而可以将分配给它的资源归还给系统,使其他进程也能顺利执行完成,故不会发生死锁
可能会发生死锁。因为系统中有3个进程,每个进程的最大资源需求量为
3,且系统中资源总数为6 ,若系统先将3个资源分配给其中一个过程,则该进程将顺利完成,从而可将分配给它的资源归还给系统,使其他进程也能顺利完成,以这种方式分配资源时不会发生死锁;若系统给每个进程分配两个资源,则系统中没有空间资源,而每个进程都需要等待一个资源,此时发生死锁。
4. 设某作业占有7个页面,如果在主存中只允许装入4个工作页面(即工作集为4),作业运行时,实际访问页面的顺序是1,2,3,6,4,7,3,2,1,4,7,5,6,5,2,1。试用FIFO与LRU页面调度算法,列出
文档评论(0)