本文主要是介绍计算机操作系统——进程同步实验之生产者和消费者问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、实验内容
1、模拟操作系统中进程同步和互斥;
2、实现生产者和消费者问题的算法实现;
二、实验目的
1、熟悉临界资源、信号量及PV操作的定义与物理意义;
2、了解进程通信的方法;
3、掌握进程互斥与进程同步的相关知识;
4、掌握用信号量机制解决进程之间的同步与互斥问题;
5、实现生产者-消费者问题,深刻理解进程同步问题;
三、实验题目
三个生产者向两个消费者提供消息,它们共享一个有界缓冲池,缓冲池有四个缓冲区,生产者向其中投放消息,消费者从中取得消息。假定这些生产者和消费者互相等效,只要缓冲池未满,生产者可将消息送入缓冲池;只要缓冲池未空,消费者可从缓冲池取走一个消息。每个缓冲设有一个锁标记,生产者在生产产品以前要先判断缓冲区是否已上锁,消费者在消费产品之前也要进行判断。
四、实现代码截图:
编译运行
五、运行截图:
3个生产者2个消费者,共享4个缓冲区,运行结果如下:
这篇关于计算机操作系统——进程同步实验之生产者和消费者问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!