首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
生产者进程和消费者进程代码如下。生产者进程有一个局部变量nextProduced,以存储新产生的新项: while(1){ /*produce an item in nextProduced*/ while((in+1)%BUFFE
生产者进程和消费者进程代码如下。生产者进程有一个局部变量nextProduced,以存储新产生的新项: while(1){ /*produce an item in nextProduced*/ while((in+1)%BUFFE
admin
2019-05-10
64
问题
生产者进程和消费者进程代码如下。生产者进程有一个局部变量nextProduced,以存储新产生的新项:
while(1){
/*produce an item in nextProduced*/
while((in+1)%BUFFER_SIZE==out};/*do nothing*/
buffer[in]=nextProduced;
in=(in+1)%BUFFER_SIZE;
}
消费者进程有一个局部变nextConsumed,以存储所要使用的项:
while(1){
while(in==out);/*do nothing*/
nextConsumed=buffer[out],
out=(0ut+i)%BUFFER_SIZE;
/*consume the item in nextConsumed*/
}
当in==out和(in+1)%BUFFER_SIZE==out条件成立时,缓冲区中item数目各是( )。
选项
A、0,BUFFER_SIZE
B、0,BUFFER_SIZE-1
C、BUFFER_SIZE-1,0
D、BUFFER_SIZE,0
答案
B
解析
通过阅读代码可知,变量in指向缓冲区中下一个空位,变量out指向缓冲区中的第一个非空位。BUFFER SIZE是缓冲区最大能容纳的item数目。buffer中,非空的位置范围是[out,in—1]或者[out,BUFFER SlZE—1]∪[0,in—1],即有如图6—8所示的两种情况。
当in==out时,前一个操作肯定是运行了消费者进程(out追上了in),因为生产者进程中,当遇到(in+1)%BUFFER_SIZE==out时就忙等,即生产进程无法使in==out,所以此时缓冲区中item数目应该是0。
当(in+1)%BUFFER_SlZE==out时,即in差一个空位就追上out了,此时缓冲区中item数目应该是BUFFER_SIZE—1。
所以本题正确答案是B选项。
转载请注明原文地址:https://kaotiyun.com/show/i6Ci777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
论述南朝门阀士族。
下列对近代社会思潮产生的先后顺序排列正确的是()。①人文主义②自由主义③理性主义④重商主义
下列对近代社会思潮产生的先后顺序排列正确的是()。①人文主义②自由主义③理性主义④重商主义
基辅罗斯国家对居民征税的方式是()。
20世纪50年代到70年代初,西欧国家通过有效的社会经济政策,维持了经济相对稳定和持续发展。这些政策主要包括()①加强对经济的宏观管理②废除生产关系中封建落后因素③发展高科技和新兴产业④进行社会改革,稳定社会
某计算机采用微程序控制方式,微指令字长32位,采用字段直接编码的控制方式,共有55个微命令,可分为6个互斥组,分别包含1、3、7、8、12、24个微命令。另外,该机共有5个可判定的外部条件,采用断定方式形成后续微指令地址。(1)设计该机微指令的格式,
若某浮点机基数为4,尾数采用补码表示,则该浮点机的规格化尾数形式为()。
一个UDP用户的数据报的数据部分长为8192字节。那么通过以太网来传播该UDP数据报时,最后一个IP分片的数据长度是()。
某计算机的主存地址空间大小为256MB,按字节编址。指令Cache和数据Cache分离,均有8个Cache行,每个Cache行大小为64B,数据Cache采用直接映射方式。现有两个功能相同的程序A和B,其伪代码如下:假定int类型数据用32位补码表示,程序
随机试题
小儿雾化吸入的时间一般是()
不开口于鼻腔的是
PACS中C的意思是
脾肾阳虚引起泄泻的主要表现是
(2009)下列哪一条是内保温做法的优点?
下列关于声环境功能区监测,说法错误的是()。
凡涉及结构承载力等使用安全和其他重要性能的处理工作,常须做必要的试验和检验鉴定工程,必须委托()进行。
下列各项中,不影响营业利润项目的是()。
教师备课时要钻研教材,包括钻研教学大纲、教科书和阅读有关的参考书。()
在企业中,职工的“工资级别”与职工个人“工资”的联系是
最新回复
(
0
)