linux_生产者消费者.docVIP

  • 5
  • 0
  • 约6.15千字
  • 约 7页
  • 2019-09-21 发布于湖南
  • 举报
操作系统实验 生产者-消费者同步问题 1.实验目的 (1)全面理解生产者与消费者问题模型,掌握解决该问题的算法思想,正确使用同步机制。 (2)学习使用Linux线程同步机制解决互斥和同步问题。 2.实验环境 已安装Linux操作系统的微机一台 3.实验内容 问题描述:一组生产者向一组消费者提供消息,它们共享一个有界缓冲池,生产者向其中投放消息,消费者从中取得消息。假定这些生产者和消费者互相等效,只要缓冲池未满,生产者可将消息送入缓冲池;只要缓冲池未空,消费者可从缓冲池取走一个消息。 功能要求:根据进程同步机制,编写一个解决上述问题的程序,可显示缓冲池状态、放数据、取数据等过程。 4.具体设计要求及有关说明 (1)有2个生产者线程,分别为P1、P2;有2个消费者进程,分别是C1、C2;缓冲区单元个数N=15; (2)不同的生产者可生产不同的产品(比如字母、数字、符号);不同的消费者可有不同的消费方式(比如“显示”、“打印”、“拼接成字符串”、“改变大小写”等)。自己可任意定义。 (3)使用Linux线程同步:mutex、condition virable和semaphore完成上述问题。 (4)程序源代码和实验结果如下: #include pthread.h #include stdio.h #include semaphore.h sem_t blank_number, prod

文档评论(0)

1亿VIP精品文档

相关文档