计算机操作系统:进程的同步和互斥

目录

1 实验名称

2 实验目的

3 实验内容

4 实验原理及流程图

5 实验源代码

6 实验结果


1 实验名称

       进程的同步和互斥

2 实验目的

       通过编写程序实现进程的同步和互斥,使学生学会分析进程(线程)竞争资源现象,学习通过信号量解决进程互斥的方法。

3 实验内容

       编写C程序,实现多线程模拟生产者、消费者问题,给出测试数据,记录程序运行结果,完成实验报告。要求:

(1)设置存放产品的缓冲区的个数为6个。

(2)信号量机制实现生产者和消费者对缓冲区的互斥访问。

(3)生产者生产产品时,要输出当前缓冲区冲产品的个数和存放产品的位置。

(4)消费者消费产品时,要输出当前缓冲区冲产品的个数和消费产品的位置。

(5)用多线程的并发实现生产者进程和消费者进程的同步。

4 实验原理及流程图

       利用信号量机制解决进程(线程)的基本方法。

       为使生产者进程与消费者进程能并发执行,在两者之间设置了一个具有 n 个缓冲区的缓冲池:生产者进程从文件中读取一个数据,并将它存放到一个缓冲区中;消费者进程从一个缓冲区中取走数据,并输出此数据。生产者和消费者之间必须保持同步原则:不允许消费者进程到一个空缓冲区去取产品;也不允许生产者进程向一个已装满产品且尚未被取走的缓冲区中投放产品。

1.关系分析࿱

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

茜茜西西CeCe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值