进程操作系统pv操作习题

元心操作系统  时间:2021-04-11  阅读:()

精品文档

一、用P、 V操作描述前趋关系。 P1、 P2、 P3、 P4、 P5、P6为一组合作进程其前趋图如图2 3所示试用P、 V操作描述这6个进程的同步。 p23

图2 3说明任务启动后P1先执行 当它结束后P2、 P3可以开始执行 P2完成后P4、 P5可以开始执行仅当P3、

P4、 P5都执行完后 P6才能开始执行。为了确保这一执行顺序设置5个同步信号量n、摄、 f3、 f4、 g分别表示进程P1、 P2、 P3、 P4、 P5是否执行完成其初值均为0。这6个进程的同步描述如下

图2 3 描述进程执行先后次序的前趋图

精品文档int f1=0; /*表示进程P1是否执行完成*int f2=0; /*表示进程P2是否执行完成*int f3=0; /*表示进程P3是否执行完成*int f4=0; /*表示进程P4是否执行完成*int f5=0; /*表示进程P5是否执行完成*main()

{cobegin

P1 ( ) ;

P2( ) ;

P3( ) ;

P4( ) ;

P5( ) ;

P6( ) ;coend

}

P1 ( )

{

┇v(f1) ;v(f1) 

}

P2 ( )

{p(f1) ;

┇v(f2) ;v(f2) ;

)

P3 ( )

{p(f1) ;

精品文档v(f3) ;

}

P4( )

{p(f2) ;

┇v(f4) ;

}

P5 ( )

{p(f2) ;

┇v(f5) ;

}

P6( )

{p(f3) ;p(f4) ;p(f5) ;

}

二、生产者-消费者问题 p25

生产者-消费者问题是最著名的进程同步问题。它描述了一组生产者向一组消费者提供产品它们共享一个有界缓冲区生产者向其中投放产品消费者从中取得产品。生产者-消费者问题是许多相互合作进程的一种抽象。例如在输入时输入进程是生产者计算进程是消费者;在输出时计算进程是生产者打印进程是消费者。因此该问题具有很大实用价值。

我们把一个长度为n的有界缓冲区(n>0)与一群生产者进程P 、 P 、„、 Pm和一群消费者进程C 、 C 、„、 Ck联系起来如图2 4所示。假定这些生产者和消费者是互相等效的。只要缓冲区未满生产者就可以把产品送入缓冲区

精品文档

类似地只要缓冲区未空消费者便可以从缓冲区中取走物品并消耗它。生产者和消费者的同步关系将禁止生产者向满的缓冲区输送产品也禁止消费者从空的缓冲区中提取物品。

图2 4 生产者-消费者问题

为解决这一类生产者-消费者问题应该设置两个同步信号量一个说明空缓冲单元的

数目用empty表示其初值为有界缓冲区的大小n 另一个说明满缓冲单元的数目用full表示其初值为0。在本例中有P 、 P 、 „、 Pm个生产者和C 、 C 、 „、 Ck个消费者它们在执行生产活动和消费活动中要对有界缓冲区进行操作。 由于有界缓冲区是一个临界资源必须互斥使用所以另外还需设置一个互斥信号量mutex其初值为1。生产者-消费者问题的同步描述如下int full=O; /*满缓冲单元的数目*int empty=n; /*空缓冲单元的数目*int mutex=1 ; /*对有界缓冲区进行操作的互斥信号量*main()

{

精品文档cobeginproduceri () ;/*i=1 2┅ m;j=l 2┅ k*consumerj () ;coend

}produceri () /*i=1 2┅ m*

{whi le(生产未完成)

{

生产一个产品;p(empty) ;p(mutex) ;

送一个产品到有界缓冲区;v(mutex) ;v(full) ;

)

}consumerj () /*j=1  2 „ k*

{whi le(还要继续消费)

{p (fu l l) ;p(mutex) ;

从有界缓冲区中取产品;v (mutex) ;v (empty) ;

消费一个产品;

}

}

精品文档

三、在操作系统中进程是一个具有一定独立功能的程序在某个数据集上的一次



A等待活动 B运行活动

C单独操作 D关联操作

答 B

四、多道程序环境下操作系统分配资源以为基本单位。

A程序 B指令 C进程 D作业

答 C

五、对于两个并发进程设互斥信号量为mutex若mutex=O则。

A.表示没有进程进入临界区

B.表示有一个进程进入临界区

C.表示有一个进程进入临界区 另一个进程等待进入

D.表示有两个进程进入临界区

答 B

六、两个进程合作完成一个任务。在并发执行中一个进程要等待其合作伙伴发来消

息或者建立某个条件后再向前执行这种制约性合作关系被称为进程的。

A.同步 B互斥 C.调度 D执行

答 A

七、为了进行进程协调进程之间应当具有一定的联系这种联系通常采用进程间交换数据的方式进行这种方式称为



A.进程互斥 B进程同步 C进程制约 D进程通信

答 D

八、在测量控制系统中数据采集任务把所采集的数据送入

一单缓冲区;计算任务从该单缓冲区中取出数据进行计

精品文档

算。试写出利用信号量机制实现两者共享单缓冲区的同步

算法。 P33

[分析及相关知识] 在本题中采集任务与计算任务共用一个单缓冲区 当采集 任务采集到一个数据后只有当缓冲区为空时才能将数据送入缓冲区中存放否则应等待缓冲区腾空;当缓冲区中有数据时计算任务才能从缓冲区中取出数据进行计算否则也应等待。

本题实际上是一个生产者—消费者问题。将生产者—消费者问题抽象出来 以另外 一种形式描述是一种常见的试题形式只要对生产者—消费者问题有了深入的理 解就不难解决此类试题。

解;在本题中应设置两个信号量Sf,Se信号量Sf表示缓冲区中是否有可供打印的计算结果其初值为0;信号量Se用于表示缓冲区有无空位置存放新的信息其初值为1。本题的同步描述如下int Se=l ;int Sf=0;main()

{cobeginget() ;compute() ;coend

}get()

{whi le (采集工作未完成)

{

采集一个数据p(Se) ;

将数据送入缓冲区中;v(Sf) ;

}

精品文档

}compute()

{whi le(计算工作未完成)

{p(Sf) ;

从缓冲区中取出数据;v(Se) ;

进行数据计算;

}

}

九、 图2 7给出了四个进程合作完成某一任务的前趋图试说明这四个进程间的同步关系并用P、 V操作描述它。

P35

图2 7 四个合作进程的前趋图

精品文档

解 图2 7说明任务启动后S1先执行。 当S1结束后

S2、 S3可以开始执行。 S2、 S3

完成后 S4才能开始执行。为了确保这一执行顺序设三个同步信号量b2、 b3、 b4分别

表示进程S2、 S3、 S4是否可以开始执行其初值均为0。这四个进程的同步描述如下int b2=0; /*表示进程S2是否可以开始执行*int b3=0; /*表示进程S3是否可以开始执行*int b4=0; /*表示进程S4是否可以开始执行*main()

{cobegin

S1 ( ) ;

S2 ( ) ;

S3 ( ) ;

S4 ( ) ;coend

}

S1 ( )

{

┇v(b2) ;v(b3) ;

}

S2 ( )

{p(b2) ;

┇v(b4) ;

}

S3 ( )

{p(b3) 

FlashFXP FTP工具无法连接主机常见原因及解决办法

目前,我们都在用哪个FTP软件?喜欢用的是WinSCP,是一款免费的FTP/SFTP软件。今天在帮助一个网友远程解决问题的时候看到他用的是FlashFXP FTP工具,这个工具以前我也用过,不过正版是需要付费的,但是网上有很多的绿色版本和破解版本。考虑到安全的问题,个人不建议选择破解版。但是这款软件还是比较好用的。今天主要是遇到他的虚拟主机无法通过FTP连接主机,这里我就帮忙看看到底是什么问题。一...

百驰云(19/月),高性能服务器,香港三网CN2 2核2G 10M 国内、香港、美国、日本、VPS、物理机、站群全站7.5折,无理由退换,IP免费换!

百驰云成立于2017年,是一家新国人IDC商家,且正规持证IDC/ISP/CDN,商家主要提供数据中心基础服务、互联网业务解决方案,及专属服务器租用、云服务器、云虚拟主机、专属服务器托管、带宽租用等产品和服务。百驰云提供源自大陆、香港、韩国和美国等地骨干级机房优质资源,包括BGP国际多线网络,CN2点对点直连带宽以及国际顶尖品牌硬件。专注为个人开发者用户,中小型,大型企业用户提供一站式核心网络云端...

青云互联19元/月,美国洛杉矶CN2GIA/香港安畅CN2云服务器低至;日本云主机

青云互联怎么样?青云互联美国洛杉矶cn2GIA云服务器低至19元/月起;香港安畅cn2云服务器低至19元/月起;日本cn2云主机低至35元/月起!青云互联是一家成立于2020年的主机服务商,致力于为用户提供高性价比稳定快速的主机托管服务。青云互联本站之前已经更新过很多相关文章介绍了,青云互联的机房有香港和洛杉矶,都有CN2 GIA线路、洛杉矶带高防,商家承诺试用7天,打死全额退款点击进入:青云互联...

元心操作系统为你推荐
internalservererrorError 500--Internal Server Error登陆建行个人网银,WIN7 64位IE10版本!accessdenied重装时系统都会提示access deniedphpmyadmin下载phpmyadmin怎么安装,求网站空间商帮助。php计划任务php定时任务,只执行一次,不要死循环新iphone也将禁售iPhone已停用,停用时间为多久?filezillaserver怎么用FileZilla Server 0.9.27 绿色汉化版软件?波音737起飞爆胎美国737MAX又紧急迫降,为什么它还在飞?人人视频总部基地落户重庆重庆总部城的项目简介重庆网站制作我想做个网站,我是重庆的人。想在本地找个做网站的公司,请教一下在重庆那个公司比较好一点,,,,谢谢netshwinsockreset游戏出现battlEye Launcher 怎么办
免备案虚拟空间 深圳域名空间 互联网域名管理办法 enom 星星海 bluevm 警告本网站 日本空间 个人免费空间 193邮箱 ftp教程 cn3 linux服务器维护 免费智能解析 100mbps 免费网页空间 东莞idc 宏讯 德隆中文网 免费网络 更多