您好,欢迎光临本网站![请登录][注册会员]  
文件名称: 操作系统课程设计-----实现生产者消费者问题
  所属分类: 网络攻防
  开发工具:
  文件大小: 33kb
  下载次数: 1
  上传时间: 2009-11-23
  提 供 者: tjmh****
 详细说明: 进程同步是指几个进程相互合作,一个进程到达某个点后,除非另一个进程已经完成某些操作,否则就不得不停下来,等待这些操作的结束,这就是进程同步的概念。 生产者-消费者问题是一个经典的进程同步问题,该问题最早由Dijkstra提出,用以演示他提出的信号量机制。本作业要求设计在同一个进程地址空间内执行的两个线程。生产者线程生产物品,然后将物品放置在一个空缓冲区中供消费者线程消费。消费者线程从缓冲区中获得物品,然后释放缓冲区。当生产者线程生产物品时,如果没有空缓冲区可用,那么生产者线程必须等待消费者线程释放出一个空缓冲区。当消费者线程消费物品时,如果没有满的缓冲区,那么消费者线程将被阻塞,直到新的物品被生产出来。 生产者—消费者问题是一种同步问题的抽象描述。计算机系统中的每个进程都可以消费或生产某类资源,当系统中某一进程使用某一资源时,可以看作是消耗,且该进程称为消费者。而当某个进程释放资源时,则它就相当一个生产者。 通过一个有界缓冲区把生产者和消费者联系起来。假定生产者和消费者是相互等效的,只要缓冲区未满,生产者就可以将产品送入缓冲区,类似地,只要缓冲区未空,消费者就可以从缓冲区中去走物品并消费它。生产者和消费者的同步关系将禁止生产者向满的缓冲区输送产品,也禁 止消费者从空的缓冲区中提取物品。 在生产者—消费者问题中,信号灯具有两种功能。首先,它是跟踪资源的生产和消费的计数器;其次,它是协调资源的生产者和消费者之间的同步器。消费者通过再一指派给它的信号灯上做P操作来表示消耗资源,而生产者通过在同一信号灯上做V操作来表示生产资源。再这种信号灯的实施中,计数在每次P操作后减1,而在每次V操作中加1。个这一计数器的初始值是可利用的资源数目。当资源是不可利用时,将申请资源的进程放置在等待队列中。如果有一个资源释放,在等待队列中的第一个进程被唤醒并得到资源的控制权。 ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: 生产者消费者
 输入关键字,在本站1000多万海量源码库中尽情搜索: