- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
新版进程同步典型例题(操作系统)
进程同步练习题
1. 在公共汽车上,司机和售票员的工作流程如图所示。为保证乘客的安全,司机和售票员应密切配合协调工作。请用信号量来实现司机与售票员之间的同步。
图 司机和售票员工作流程图
2. 桌子上有一只盘子,盘子中只能放一只水果。爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,一个儿子专等吃盘子中的橘子,一个女儿专等吃盘子中的苹果。用PV操作实现他们之间的同步机制。
3. a,b两点之间是一段东西向的单行车道,现要设计一个自动管理系统,管理规则如下:
(1)当ab之间有车辆在行驶时同方向的车可以同时驶入ab段,但另一方向的车必须在ab段外等待;
(2)当ab之间无车辆在行驶时,到达a点(或b点)的车辆可以进入ab段,但不能从a点和b点同时驶入;
(3)当某方向在ab段行驶的车辆驶出了ab段且暂无车辆进入ab段时,应让另一方向等待的车辆进入ab段行驶。
请用信号量为工具,对ab段实现正确管理以保证行驶安全。
4.将只读数据的进程称为“读者”进程,而写或修改数据的进程称为“写者”进程。允许多个“读者”同时读数据,但不允许“写者”与其他“读者”或“写者”同时访问数据。另外,要保证:一旦有“写者”等待时,新到达的“读者”必须等待,直到该“写者”完成数据访问为止。试用P、V操作正确实现“读者”与“写者”的同步。(第二类读者写者问题,信号量解决方法有一个仓库,可以存放A和B两种产品,但要求:1)每次只能存入一种产品(A或B);2)-N<A产品数量B产品数量<M。其中,N和M是正整数。试用同步算法描述产品A与产品B的入库过程。1、在公共汽车上,司机和售票员的工作流程如图所示。为保证乘客的安全,司机和售票员应密切配合协调工作。请用信号量来实现司机与售票员之间的同步。
图 司机和售票员工作流程图
【答案】
semaphoere S1=S2=0;
void Driver()
{
while(1)
{
wait(S1);
启动车辆;
正常行车;
到站停车;
signal(S2);
}
}
void Busman()
{
while(1)
{
关车门;
signal(S1);
售票;
wait(S2);
开车门;
}
}
main()
{
cobegin{
Driver();
Busman();
}
}
2. 桌子上有一只盘子,盘子中只能放一只水果。爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,一个儿子专等吃盘子中的橘子,一个女儿专等吃盘子中的苹果。用PV操作实现他们之间的同步机制。
【答案】
semaphore S=1,S1=S2=0;
void father()
{
while(1)
{
准备苹果;
wait(S);
将苹果放在盘子内;
signal(S1);
}
}
void mother()
{
while(1)
{
准备橘子;
wait(S);
将橘子放在盘子内;
signal(S2);
}
}
void daughter()
{
while(1)
{
wait(Sl);
从盘子里拿走苹果;
signal(S);
吃苹果;
}
}
void son()
{
while(1)
{
wait(S2);
从盘子里拿走橘子;
signal(S);
吃橘子;
}
}
main()
{
cobegin{
father();
mother();
daughter();
son();
}
}
3. a,b两点之间是一段东西向的单行车道,现要设计一个自动管理系统,管理规则如下:
(1)当ab之间有车辆在行驶时同方向的车可以同时驶入ab段,但另一方向的车必须在ab段外等待;
(2)当ab之间无车辆在行驶时,到达a点(或b点)的车辆可以进入ab段,但不能从a点和b点同时驶入;
(3)当某方向在ab段行驶的车辆驶出了ab段且暂无车辆进入ab段时,应让另一方向等待的车辆进入ab段行驶。
请用信号量为工具,对ab段实现正确管理以保证行驶安全。
【答案】
此题是读者-写者问题的变形。设置3个信号量S1、S2和Sab,分别用于从a点进入的车互斥访问共享变量ab(用于记录当前ab段上由a点进入车辆的数量),从b点进入的车互斥访问共享变量ba(用于记录当前ab段上由b点进入车辆的数量)和a、b点的车辆互斥进入ab段。3个信号量的初值分别为1、1和1,两个共享变量ab和ba的初值分别为0、0。
semaphore
您可能关注的文档
- 教育统计与测量.doc
- 教师评价汇总表2014-2015学年11.doc
- 教案1-正投影特性.doc
- 教育统计学重点.doc
- 数字信号处理与应用作业答案.docx
- 数字逻辑实验报告(同步计数器).doc
- 数学广角搭配同步习题.docx
- 教育学+教育法规.docx
- 数学与人类文明作业.docx
- 教你挑海鲜.docx
- 2025年北美产区葡萄酒特色与品牌国际化发展趋势报告.docx
- 2025年大数据存储技术在网络安全领域的应用与市场规模增长报告.docx
- 2025-2026学年初中数学八年级下册沪教版(五四学制)(2024)教学设计合集.docx
- 建筑施工现场信息化安全管理在施工现场安全教育培训中的应用报告.docx
- 旅游度假区景观植被配置评估报告(2025年).docx
- 能源与资源行业:2025年能源行业绿色金融发展现状与趋势分析.docx
- 工业互联网平台数字签名技术规范与平台技术创新应用案例研究报告.docx
- 主持会议主持词模板(7篇).docx
- 学校科学调研报告(3篇).docx
- 量子点显示技术发展对OLED产业颠覆性冲击评估报告.docx
文档评论(0)