首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
自考
编写利用消息机构实现输入进程和输出进程同步的C程序。输入进程从标准输入读入一个字符串,并将该字符串发给输出进程;输出进程向标准输出中输出字符串。通信双方通过关键字为MSGKEY的消息队列进行通信,两个程序使用相同的一组头文件,假设头文件的说明已放在文件ms
编写利用消息机构实现输入进程和输出进程同步的C程序。输入进程从标准输入读入一个字符串,并将该字符串发给输出进程;输出进程向标准输出中输出字符串。通信双方通过关键字为MSGKEY的消息队列进行通信,两个程序使用相同的一组头文件,假设头文件的说明已放在文件ms
admin
2016-05-12
53
问题
编写利用消息机构实现输入进程和输出进程同步的C程序。输入进程从标准输入读入一个字符串,并将该字符串发给输出进程;输出进程向标准输出中输出字符串。通信双方通过关键字为MSGKEY的消息队列进行通信,两个程序使用相同的一组头文件,假设头文件的说明已放在文件msgcom.h中。
选项
答案
程序清单24-7:msg.C /*msgcom.h*/ #include<errno.h> #include<sys/types.h> #include<sys/ipc.h> #include<sys/msg.h> #define MSGKEY 12345678 struct msgtype{ long mtype; charstr[256]; }; /*输入进程*/ #include"msgcom.h" #include<stdio.h> #include<string.h> main() { struct msgtype buf; int qid,pid; void bzero(); if((qid=msgget(MSGKEY,IPC_CREAT|0666))==-1) return(-1); buf.mtype=getpid(); while(1){ bzero(buf.str,sizeof(buf.str)); printf("Input data:"); Scanf("%S",buf.str); msgsnd(qid,&buf,strlen(buf.str)+1,0); } } /*输出进程*/ #include"msgcom.h" #include<stdio.h> main() { void bzero(); struct msgtype buf; int qid; if((qid=msgget(MSGKEY,IPC_CREAT|0666))==-1) return(-1); while(1){ msgrcv(qid,&buf,512,0,MSG_NOERROR);//接收消息队列最早的消息 printf("Receive a string from process%d:%S\n",buf.mtype,buf.str); bzero(buf.str,sizeof(buf.str)); } } 由于消息队列本身就具有缓冲和队列的同步机制,故发送进程只需不断发数据,接收进程只管不断收数据就可以了。这比用信号量实现计算进程和打印进程的同步要简单。
解析
转载请注明原文地址:https://kaotiyun.com/show/DSNx777K
本试题收录于:
操作系统题库理工类分类
0
操作系统
理工类
相关试题推荐
考虑χy平面上的直线运动路径,源点坐标为(1,1),终点坐标为(13,11),两轴速度限制:vχmax=vymax=±6,加速度限制:aχmax=aymax=±2,试设计三次多项式样条函数点位控制指令。
对大多数工程项目来说,单位时间的资源消耗在整个使用范围内,通常是()
________是项目建设全过程的最后一道程序。
下列选项中,招标人可以不必在资格预审文件或招标文件中载明()
隔离是将___________和信号处理单元等隔离开,单独处理,从而减弱系统内部和系统向外的电磁辐射。
根据任务属性的不同,入侵检测系统的功能结构分为哪几部分,作用分别是什么?
下列有关时间与资源优化的叙述中,不正确的是()
文件映射只可用于________的进程之间,而不能用于网络上。
从现实生活中举例说明栈和队列的特征。
随机试题
A.B.C.D.E.《中国药典》中规定,芦荟的指标控制成分是
布管轴线应符合设计要求,而且相邻管口错开(),以便清管和处理管口。
大学人文精神谈片(其三)大学人文学科的职责,我以为可分为两个层面。一个层面是,其科研,直接给当下的社会进步事业以智力支持,直接服务于社会;其教学,培养学生具有切实有用的专业知识、方法和能力,使他们获得服务社会、建设国家和自己谋生的本领。这些,是我
某甲的外祖父与某乙的父亲是亲兄弟,某丙的外祖母与某丁的祖母是亲姐妹。则()
为什么用δ值表示峰位,而不用共振频率的绝对值表示?为什么核的共振频率与仪器的磁场强度有关,而偶合常数与磁场强度无关?
下列关于肾血管性高血压临床特点的叙述,不正确的是()
关于脾转移性癌叙述,依据发生率高低依次为
在建设工程项目施工过程中,施工机具使用费的索赔款项包括()。
张某刚刚大学毕业参加工作,因工作地点离家较远,且上班时间较早,故张某每天很早便会出门等候公交车。某日,他在上车时与另一位年轻人刘某发生争吵,二人互不相让,最终开始斗殴,公交车因此无法发车。接到报警后,人民警察赶到现场开始调查。请问,下列选项中,哪项措施与人
国产影片《英雄》显然是前两年最好的古装武打片。这部电影是由著名导演、演员、摄影师、武打设计师和服装设计师参与的一部国际化大制作的电影。票房收入的明显领先说明观看该部影片的人数远多于观看进口的美国大片《卧虎藏龙》的人数,尽管《卧虎藏龙》也是精心制作的中国古装
最新回复
(
0
)