没有合适的资源?快使用搜索试试~ 我知道了~
山大操作系统实验4.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 14 浏览量
2022-06-22
15:03:48
上传
评论
收藏 583KB DOC 举报
温馨提示
试读
9页
进程同步实验 张咪 软件四班 一、实验要求 加深对并发协作进程同步与互斥概念的理解,观察和体验并发进程同步与互斥操作的效 果,分析与研究经典进程同步与互斥问题的实际解决方案。了解Linux系统中IPC进程同 步工具的用法,练习并发协作进程的同步与互斥操作的编程与调试技术。 二、实验目的 抽烟者问题。假设一个系统中有三个抽烟者进程,每个抽烟者不断地卷烟并抽烟。抽烟 者卷起并抽掉一颗烟需要有三种材料:烟草、纸和胶水。一个抽烟者有烟草,一个有纸 ,另一个有胶水。系统中还有两个供应者进程,它们无限地供应所有三种材料,但每次 仅轮流提供三种材料中的两种。得到缺失的两种材料的抽烟者在卷起并抽掉一颗烟后会 发信号通知供应者,让它继续提供另外的两种材料。这一过程重复进行。 请用以上介绍的IPC同步机制编程,实现该问题要求的功能。 三、实验环境 实验环境均为Linux操作系统,开发工具为gcc和g++。 四、实验思路 1、约束: (1)某一时刻,只能有一个供应者,放入一对物品。 (2)某一时刻,只能有一个抽烟者,且要保证这个抽烟者恰好需要的就是刚刚生产的物 品。 (3)所有供应者提供这种物品之后,不论它
资源推荐
资源详情
资源评论
山大操作系统实验 4
进程同步实验
张咪
软件四班
一、实验要求
加深对并发协作进程同步与互斥概念的理解,观察和体验并发进程同步与互斥操作的效果,
分析与研究经典进程同步与互斥问题的实际解决方案。了解 Linux 系统中 IPC 进程同步工
具的用法,练习并发协作进程的同步与互斥操作的编程与调试技术。
二、实验目的
抽烟者问题。假设一个系统中有三个抽烟者进程,每个抽烟者不断地卷烟并抽烟。抽烟者
卷起并抽掉一颗烟需要有三种材料:烟草、纸和胶水。一个抽烟者有烟草,一个有纸,另
一个有胶水。系统中还有两个供应者进程,它们无限地供应所有三种材料,但每次仅轮流
提供三种材料中的两种。得到缺失的两种材料的抽烟者在卷起并抽掉一颗烟后会发信号通
知供应者,让它继续提供另外的两种材料。这一过程重复进行。 请用以上介绍的 IPC 同步
机制编程,实现该问题要求的功能。
三、实验环境’’
实验环境均为 Linux 操作系统,开发工具为 gcc 和 g++。
四、实验思路’
1、约束:
(1)某一时刻,只能有一个供应者,放入一对物品。
(2)某一时刻,只能有一个抽烟者,且要保证这个抽烟者恰好需要的就是刚刚生产的物品。
(3)所有供应者提供这种物品之后,不论它要生产什么物品,只有等到抽烟者拿走了物品
之后,才能继续生产。
供应者 1 供应者 2
wait(empty); wait(empty);
wait(mutex1); wait(mutex1);
随机生产两样产品; 随机生产两样产品;
signal(mutex1); signal(mutex1);
//有烟草的 //有烟草的
if(P&G)signal(s1); if(P&G)signal(s1);
//有胶水的 //有胶水的
if(P&T)signal(s2); if(P&T)signal(s2);
//有纸的 //有纸的
if(T&G)signal(s3); if(T&G)signal(s3);
资源评论
是空空呀
- 粉丝: 170
- 资源: 3万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功