操作系统附加题答案PPT课件_第1页
操作系统附加题答案PPT课件_第2页
操作系统附加题答案PPT课件_第3页
操作系统附加题答案PPT课件_第4页
操作系统附加题答案PPT课件_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.,1,进程同步问题,操作系统附加题,.,2,作业,由三个进程get,copy和put以及两个缓冲区buffer1和buffer2完成 一项输入/输出操作。进程get的功能是把一张卡片上的信息从读卡机上读进buffer1;进程copy的功能是把buffer1中的信息复制到buffer2;进程put的功能是取出buffer2中的信息并从打印机上打印输出。试用P、V操作完成这三个进程间的尽可能并发正确执行的关系(用程序或框图表示),并指明信号量的作用和初值。 某寺庙,有小和尚、老和尚若干。有一水缸,由小和尚提水入缸老和尚饮用。水缸可容十桶水,水取自同一井中。水井径窄,每次只能容一个桶取水。水桶总数

2、为3个。每次入、取水仅为一桶,且不可同时进行。试给出有关取水、入水的算法描述。,.,3,.,4,.,5,.,6,semaphore empty=10;/ 表示缸中目前还能装多少桶水,初始时能装10桶水 semaphore full=0;/ 表示缸中有多少桶水,初始时缸中没有水 semaphore buckets=3;/ 表示有多少只空桶可用,初始时有3只桶可用 semaphore mutex_well=1;/ 用于实现对井的互斥操作 semaphore mutex_bigjar=1; / 用于实现对缸的互斥操作 young_monk() while(1) P(empty); P(buckets

3、); go to the well; P(mutex_well); get water; V(mutex_well); go to the temple; P(mutex_bigjar); pure the water into the big jar; V(mutex_bigjar); V(buckets); V(full); ,.,7,old_monk() while() P(full); P(buckets); P(mutex_bigjar); get water; V(mutex_bigjar); drink water; V(buckets); V(empty); ,47. 系统中有

4、多个生产者进程和多个消费者进程,共享一个能存放 1000 件产品的环形 缓冲区(初始为空)。当缓冲区未满时,生产者进程可以放入其生产的一件产品,否则等待; 当缓冲区未空时,消费者进程可以从缓冲区取走一件产品,否则等待。要求一个消费者进程从缓冲区连续取出 10 件产品后,其他消费者进程才可以取产品。请使用信号量 P,V(wait(), signal()操作实现进程间的互斥与同步,要求写出完整的过程,并说明所用信号量的含义和 初值。,semaphore mutex1=1; semaphore mutex2=1; semaphore empty=n; semaphore full=0; producer() while(1) 生产一个产品; P(empty);/判断缓冲区是否有空位 P(mutex2);/互斥访问缓冲区 把产品放入缓冲区; V(mutex2);/互斥访问缓冲区 V(full);/产品的数量加 1 consumer() while(1) P(mutex1)/连续取 10 次 for(int i = 0; i = 10; +i) P(full);/判断缓冲区是否有产品 P(mutex2);/互

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论