还剩9页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
浙江大学都市学院试验汇报课程名称___________操作系统原理试验_______________试验项目名称试验七进程通信一一消息队列学生姓名潘唯帆专业班级计算1003学号31001172试验成绩指导老师(签名)日期_____________注意•务请保留好各自日勺源代码,已备后用•请上传到平台BB
1.一.试验目日勺和规定
2.理解Linux系统的进程间通信机构(IPC);
3.理解Linux有关消息队列的概念;
4.掌握Linux支持消息队列的系统调用;
5.巩固进程同步概念
二、试验内容实现并发进程间消息的发送与接受
三、试验环节消息的发送与接受
1.)编译运行给出日勺和观测运行成果1client.c server.c,#include sys/msg.h#include sys/ipc.h#define MSGKEY75struct msgformlong mtype;char mtext
[1000];}msg;int msgqid;void server/*创立消息队列*/75#msgqid=msggetMSGKEY,0777|IPC_CREAT;do/*接受消息*/;msgrcvmsgqid,msg,1030,0,0printfHserverreceived:%s\n,,msg.mtext;lockfmsg,0,0;}whilemsg.mtype!=1;/*删除消息队列,偿还资源*/msgctlmsgqid,IPC_RMID,O;exitO;mainserver;
四、讨论、心得记录试验感受、上机过程中碰到的困难及处理措施、遗留日勺问题、意见和提议等root@localhost:/panweifan文件⑹编造©查看终端
①标签
⑧帮助的[root^localhost panwei fangcc-o serverserver.c server.cIn functionserverserver.c22警告隐式声明与内建函数printf不兼容server.c26警告隐式声明与内建函数exi t不兼容[root^localhost panweifan]=./server serverrecei vedserverreceivedserverrecei vedserverreceived serverreceivedserverreceivedserverreceived serverreceivedserverrecei vedserverrecei ved[root^localhost panweifan]-文件⑹编辑⑹查看包终端
①标签
⑧帮助祖[root^localhost panweifan-gcc-o clientcl lent.c client.cInfunction cltentclient.c22警告隐式声明与内建函数printf不兼容client.c26警告隐式声明与内建函数exi t不兼容[root^localhost panwetfan./cl lentclientsentcl tentsenlclientsentcltentsentcllentsentclientsentcl tentsentclientsentcltentsentclientsent1[root4-localhost panwetfan]=)请给上述程序添加同步控制,实现同步运行2文件⑹编辑©查看
⑨终端
①标签⑻帮助的[root-o-local hostpan we ifan./serverserverrecei vedserverrecei vedserverjrecei vedserverreceivedserverjreceivedserverrecei vedserverrecei vedserverreceivedserverrecei\edserverrecei vea[rootOlocal hostpanweitan j=#include sys/types.h#include sys/msg.h#include sys/ipc.h#define MSGKEY75struct msgformlongmtype;char mtext
[1000];}msg;int msgqid;void server/*创立消息队列*/75#msgqid=msggetMSGKEY,0777|IPC_CREAT;do/*接受消息*/msgrcvmsgqid,msg,1030,0,0;printfM serverreceived\n;lockfmsg,0,0;}whilemsg.mtype!=l;/*删除消息队列,偿还资源刃msgctlmsgqid,IPC_RMID,O;exitO;mainserver;#include sys/types.h#include sys/msg.h#include sys/ipc.h#define MSGKEY75struct msgformlongmtype;char mtext
[1000];}msg;int msgqid;void clientQinti;/*打开消息队列刃75#msgqid=msggetMSGKEY,0777;fori=10;i=l;i—msg.mtype=i;printfclientsent\n;/*发送消息*/msgsndmsgqid,msg,1024,0;lockfmsg,l,0;exit0;mainclient;,编写程序使用消息队列,实现具有下列功能两2个程序(进程))程序负责接受顾客来自键盘的输入;1A)程序负责实时输出顾客由程序接受的字符2B A程序和程序可分别在两个进程上同步运行A B文件⑹编辑⑹查看Q终端
①标签⑻帮助时[roottt*localhost panweifan]
2./serverserverrecei vedIserverrecei ved:haveserverrecei ved aserverrecei veddreamserverreceived thatserverreceived oneserverreceived dayserverreceived:everyoneserverrecei vedwi11serverreceived1i veserverreceivedaserverreceived happyserverreceived1i feserverreceived.#include sys/types.h#include sys/msg.h#include sys/ipc.h#define MSGKEY75struct msgform{longmtype;char mtext
[1000];}msg;int msgqid;void clientinti;/*打开消息队列*/75#msgqid=msggetMSGKEY,0777;fori=100;i=l;i—{msg.mtype=i;scanfH%sn,msg.mtext;/*发送消息*/msgsndmsgqid,msg,1024,0;lockfmsg,l,0;exitO;mainclient;。
个人认证
优秀文档
获得点赞 0