实验报告14—系统消息队列
一、实验简介
1.概述
消息队列可以认为是一个消息链表。有足够写权限的进程可向队列中放置消息,有足够读权限的进程可以从队列中取走消息。每个消息是一个记录,它由发送者赋予一个优先级。在某个进程向一个队列写入消息之前,并不需要另外一个进程在该队列中等待该消息的到达。
二、实验目的
1.加深对进程概念的理解,明确进程和程序的区别,进一步认识并发执行的实质。
2.了解并熟悉linux系统中利用消息队列实现进程通信的基本概念和方法。
3.熟悉linux提供的有关系统调用函数/库函数,并能使用这些函数。
三、实验条件
1.Ubuntu系统
四、实验内容
1.进入ubuntu系统,
2.编写两个程序clientc和serverc,分别用于消息的发送和接收。server建立一个Kev为75的消息队列,等待其它进程发来的消息。当遇到类型为1的消息,则作为结束信号,取消该队列,并退出server。server每接收到一个消息后显示一句"(server)received。"client使用 kev为75的消息队列,先后发送类型从10到1的消息,然后退出。最后一个消息,即是server 端需要的结束信号。client每发送一条消息后显示一句“(client)sent”。
client.c
server.c