首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
自考
编写利用消息机构实现输入进程和输出进程同步的C程序。输入进程从标准输入读入一个字符串,并将该字符串发给输出进程;输出进程向标准输出中输出字符串。通信双方通过关键字为MSGKEY的消息队列进行通信,两个程序使用相同的一组头文件,假设头文件的说明已放在文件ms
编写利用消息机构实现输入进程和输出进程同步的C程序。输入进程从标准输入读入一个字符串,并将该字符串发给输出进程;输出进程向标准输出中输出字符串。通信双方通过关键字为MSGKEY的消息队列进行通信,两个程序使用相同的一组头文件,假设头文件的说明已放在文件ms
admin
2016-05-12
29
问题
编写利用消息机构实现输入进程和输出进程同步的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
操作系统
理工类
相关试题推荐
已知系统的结构图如图所示,若χ(t)=2×1(t)时,使σ%=20%,τ应为多大,此时Ts是多少?
以指标的性质为标准进行分类,将建设项目经济评价指标划分为时间性指标、价值性指标、________。
现有两个存款机会,一为投资1000万元,期限3年,年利率7%,单利计算;二为同样投资及年限,单利率6%,按复利计算,应选择哪种方式?
简述建筑工程技术经济评价的特点及表现。
根据合同包括的工作范围,建设工程施工合同可划分为()
下列不属于经济评价方法中一组备选方案之间常见经济关系类型的是()
以指标的性质为标准进行分类,建设项目经济评价指标可划分为时间性指标、价值性指标和_________。
编制财务现金流量表目的是向_______系统说明项目编制和相应的财务分析。
_______是提高经济效益的核心,也是成本控制的最基本的原则。()
某企业的网络安全设备配置拓扑如图所示。选用适当的网络安全设备填入图的①~④处。答案填写在答题纸上。可选网络安全设备:路由器、防火墙、中心交换机、身份认证服务器
随机试题
下列句中,加着横线的字不属于分化字的一句是【】
与资本、劳动共同构成企业生产三要素的是_______。
求过点(1,2,3)且垂直于直线的平面方程.
心正常起搏点是
下列哪种抗肿瘤药可以通过血-脑屏障?()
资源开发项目在可行性研究及其报告中,应着重反映的内容不包括()。
下列工况中,选用低氢型焊条的有()。
设f(u)连续,f(0)=0,f’(0)=1,且D=(x,y)|x2+y2≤t2},则=________.
ItisnotthatIdonotlikeplays.ThereasonwhyIdidnotgotothetheaterlastnightwasthatIcouldnot()thetime.
Wherewouldyourather________yourwintervacation,SanyaorXiamen?
最新回复
(
0
)