首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
今有3个并发进程R、M和P,互斥使用一个可循环使用的缓冲区B,缓冲区B共有n个单元(n>0)。进程R负责从输入设备读信息,每读一个字符后,把它们存放在缓冲区B的一个单元中,进程M负责处理读入字符,若发现读入的字符中有空格,则把它改变成“;”;进程P负责把处
今有3个并发进程R、M和P,互斥使用一个可循环使用的缓冲区B,缓冲区B共有n个单元(n>0)。进程R负责从输入设备读信息,每读一个字符后,把它们存放在缓冲区B的一个单元中,进程M负责处理读入字符,若发现读入的字符中有空格,则把它改变成“;”;进程P负责把处
admin
2017-11-20
37
问题
今有3个并发进程R、M和P,互斥使用一个可循环使用的缓冲区B,缓冲区B共有n个单元(n>0)。进程R负责从输入设备读信息,每读一个字符后,把它们存放在缓冲区B的一个单元中,进程M负责处理读入字符,若发现读入的字符中有空格,则把它改变成“;”;进程P负责把处理后的字符取出并打印输出。当缓冲区单元中的字符被进程P取出后,又可用来存放下一次读入的字符。请添加必要的信号量和P、V(或wait()、signal())操作,实现上述过程中的互斥与同步。要求写出完整的过程,说明信号量的含义并赋初值。
选项
答案
本题还是一个生产者-消费者的变型,与2009年真题不同之处在于,2009年真题是一个生产者,对应两个消费者;本题是生产者-消费生产者-消费者类型,其实质是两个生产者一消费者关系。R是生产者,M是对应消费者,同时M也充当生产者,P是对应的消费者。把这些进程间的关系理清楚,是解题的基础。 本题的缓冲区B可描述为 char bufferB[n]; (1)缓冲区是一互斥资源,因此设互斥信号量mutex。 (2)上述进程的同步问题,需设置3个信号量,其中empty对应空闲的缓冲单元,初值为n;full_1对应缓冲区中待M处理的字符,初值为0;full_2对应缓冲区中已经处理过而待打印输出的字符,初值为0。另外,还需定义3个整型变量in、out_1、out_2,分别用来指示下一个可存放字符的缓冲单元、下一个待M处理的缓冲单元及下一个待打印输出的缓冲单元,它们的初值均为0。过程如下: char bufferB[n] //缓冲区字符数组 semaphore empty=n; //空闲缓冲单元数 semaphore full_1=0; //待M处理的字符数 semaphre full_2=0; //待P取出打印字符数 semaphore mutex=1; //缓冲区的互斥访间信号量 int in=0; //指示可存放字符的缓冲单元 int out_1=0; //指示下一个待M处理的缓冲单元 int out_2=0; //指示下一个待P取出打印的缓冲单元 R() { Char ch; while(1) { 从输入设备读取一个字符到ch中; P(empty); //检查缓冲区是否有可以存放新读入字符的缓冲单元 P(mutex); //申请访问缓冲区 bufferB[in]=ch; //存放新读入字符的缓冲单元 v(mutex); /I释放缓冲区 v(full_1); //待M处理的字符数增1 in=(in+1)%n; //in指针后移,遇末循环到0单元 } } M() //读者可参照R()自行写出注释 { while(1) { P(full_1); P(mutex); if(bufferB[out_1]==’ ’) burfer[out_1]=’;’; V(mutex); V(full_2); out_1=(out_1+1)%n; } } P() //者可参照R()自行写出注释 { char ch while(1) { p(full_2), p(mutex); ch=bufferB[out_2]; V(mutex); V(empty); out_2=(out_2+1)%n; 将字符ch打印输出; } }
解析
转载请注明原文地址:https://kaotiyun.com/show/5NRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
关于《荷马史诗》的叙述不正确的是()。
中共十四届六中全会《关于加强社会主义精神文明建设若干重要问题的决议》,强调要()。
二战以来,资本主义经济在发展中出现了许多新问题,这主要表现在()
下列有关《布列斯特和约》的说法中,错误的一项是()。
法国里昂工人起义提出:“我们只有一个口号‘人人自由平等!’”英国宪章运动请愿书提出:“我们竭尽自由人的义务,就应享受自由人的权利。我们要求普遍选举。”这些要求表明()。①带有空想社会主义色彩②当时工人的要求还没有超出资产阶级民主主义的范畴
中华人民共和国恢复在联合国合法席位的时间是()。
阅读史料回答以下问题:天既哀大地生人之多艰,黑帝乃降精而救民患,为神明,为圣王,为万世作师,为万民作保,为大地教主。生于乱世,乃据乱世而立三世之法,而垂精太平。乃因其所生之国,而立三世之义,而注意于大地远近、大小若一之大一统。乃立元以统天,以天为
论述欧洲一体化的进程及影响。
支持多道程序的操作系统,区别于其他操作系统的主要特征为()。
随机试题
_______焊件焊缝内部缺陷常用超声波检验来检测。
关于哪个不是维生素A缺乏的眼部表现
WHO关于乳腺癌TNM分期中T3是指肿瘤直径
侧击雷的雷击点不在建筑物的顶部而在其侧面,属于()危害。
固定资产投资可以促进消费增长,下列未体现此作用的是()。
方某工作已满15年,2009年上半年在甲公司已休带薪年休假5天;下半年调到乙公司工作,提出补休年休假的申请。已知,方某调到乙公司工作时当年剩余日历天数占全年日历天数的比例约为1/2。乙公司对方某补休年休假申请符合法律规定的答复是()。(2010年)
以下哪些不符合班都拉“社会学习理论”的观点?()
读图及表格,回答下列问题。 分析⑥⑦两地年均温接近,但降水量差异较大的原因:___________________________________
随着人们生活水平的提高和高收人家庭的增多。许多家长越来越看重海外教育资源。在长长短短的各个假期里,家长们不再只局限于“清一色”地给孩子报各种兴趣班、补习班。而是鼓励孩子走出去,在“读万卷书”的基础上“行万里路”,由此催生了出境游学热潮。但同时,游学机构繁杂
以下软件中属于计算机应用软件的是()。
最新回复
(
0
)