首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
某工厂有一个仓库可以存放甲、乙两种零部件,甲零件可以存放m件,乙零件可以存放n件,车间A专门生产甲零件,每次1件,每生产1件存放进仓库1件;车间B专门生产零件乙,每次1件,每生产1件存放进仓库1件。总装车间每次从仓库取出2件甲零件、1件乙零件组装成成品,车
某工厂有一个仓库可以存放甲、乙两种零部件,甲零件可以存放m件,乙零件可以存放n件,车间A专门生产甲零件,每次1件,每生产1件存放进仓库1件;车间B专门生产零件乙,每次1件,每生产1件存放进仓库1件。总装车间每次从仓库取出2件甲零件、1件乙零件组装成成品,车
admin
2013-12-31
44
问题
某工厂有一个仓库可以存放甲、乙两种零部件,甲零件可以存放m件,乙零件可以存放n件,车间A专门生产甲零件,每次1件,每生产1件存放进仓库1件;车间B专门生产零件乙,每次1件,每生产1件存放进仓库1件。总装车间每次从仓库取出2件甲零件、1件乙零件组装成成品,车间A、B和总装车间必须互斥进入仓库。当仓库内甲、乙零件分别达到m、n件时,车间A、B分别停止生产。而仓库内任何一种零件为0时,总装车间停产。根据上述规则,请利用信号量机制,设计一个可以让车间A、B和总装车间协调运转的程序,并说明各个信号量的意义,用类C语言写出整个过程。
选项
答案
设信号量mutex用于车间的互斥,positionA、positionB和partA,partB为资源信号量,分别表示仓库中零件甲、乙的空位数和满位数,positionA+partA=m;positionB+ partB=n;以下编程: deftype int semaphore; //定义信号量 semaphore mutex=1; //进入仓库的互斥信号量 semaphore positionA=m,positionB=n;//车间A、B生产的零件甲、乙存放的位置 semaphore partA=0,partB=0; //零件甲、乙的信号量 void workshopA() //车间A进程 { while(TRUE) //并发调度 { int item; //仓库货架指针 item=produce(甲); //生产零件甲 p(positionA); //查有无零件甲的货位 p(mutex); //仓库可以进入吗? puton(item); //放置零件甲 V(mutex); //释放仓库互斥量 V(partA); //增加零件甲的资源信号量 } //离开 } void workshopB() //车间B进程 { while(TRUE) //并发调度 { int item //仓库货架指针 item=produce(乙); //生产零件乙 p(positionB); //查有无零件乙的货位 p(mutex); //仓库可以进入吗? puton(item); //放置零件乙 V(mutex); //释放仓库互斥量 V(partB); //增加零件乙的资源信号量 } //离开 } void assembleshop() //总装车间进程 { while(TRUE) //并发调度 { int iteml,item2; //仓库货架指针 P(partA); //查第一个零件甲是否有? P(partA); //查第二个零件甲是否有? P(partB); //查第一个零件乙是否有? P(mutex); //仓库可以进入吗? item1=get(甲,2); //取出2个零件甲 item2=get(乙); //取出1个零件乙 V(mutex); //释放仓库互斥量 V(positionA); //增加零件甲的第一空位信号量 V(positionA); //增加零件甲的第二空位信号量 V(positionB); //增加零件乙的空位信号量 assemble(iteml,item2); //总装 } //离开 }
解析
转载请注明原文地址:https://jikaoti.com/ti/59ajFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
文艺复兴运动兴起的时间是()。
()的手工业和商业,是由官府统一经营和管理的,称为工商食官。
评述欧洲一体化的历史进程。(华东师范大学1998年世界当代史真题)
论述英国都铎王朝加强专制统治的过程及措施
简述战后西欧经济的变化过程。
简述1931—1937年间的日本侵华史实。(南京大学2004年中国近现代史真题)
在1958年通过了“鼓足干劲、力争上游、多快好省地建设社会主义”总路线的会议是()。
帝国前期罗马文化吸收了许多民族的文化成果,进入了兴盛时代。其中自然科学方面最有代表性的人物是()。
西班牙内战演变为反法西斯的民族革命战争,主要是由于()。
在一个长度为n(n>1)的带头结点的单链表h上,设有尾指针r(指向尾结点),则执行()操作与链表的长度有关。
随机试题
患者,女,28岁。停经40天,阴道不规则少量流血7天。尿妊娠试验(+)。给予刮宫,刮出物病理检查结果为蜕膜组织。考虑最可能是
血液的正常pH值范围是
中央管理主机的事件存储载体,应至少能存储不少于()的事件记录。
堤基清理的要求包括()等。
桩基础的内容是()。
β系数作为衡量系统风险的指标,其与收益水平负相关。()
以下属于有关经营状况的信号的有()。
有些低碳经济是绿色经济,因此低碳经济都是高技术经济。以下哪项如果为真,最能反驳上述论证?
在面向对象方法中,对象可看出是属性(数据)以及这些属性上的专用操作的封装体。封装是一种1._____技术,封装的目的是使对象的2._____分离。1._____A.组装B.产品化C.固化D.信息隐蔽
Amongtheraftofbooks,articles,jokes,romanticcomedies,self-helpguidesandotherwritingsdiscussingmarriage,somefamil
最新回复
(
0
)