《《操作系统实训(Linux)——习题解答、例题解析、实验指导》-王红-电子教案 实验 实验8 Linux系统进程的消息通信》由会员分享,可在线阅读,更多相关《《操作系统实训(Linux)——习题解答、例题解析、实验指导》-王红-电子教案 实验 实验8 Linux系统进程的消息通信(6页珍藏版)》请在金锄头文库上搜索。
1、1,实验8 LINUX系统进程的消息通信,实验8 Linux系统进程的消息通信,一本实验目: 熟悉支持消息通信机制及消息量机制。 熟悉支持消息通信机制。,2,实验8 LINUX系统进程的消息通信,二实验预备内容: 阅读Linux系统的msg.c、sem.c和shm.c等源程序码文件,熟悉Linux的三种通信机制。,3,实验8 LINUX系统进程的消息通信,三实验内容: 消息的创建,发送和接收。 1、使用系统调用msgget( ),msgsnd( ),msgrev( ) 及 msgctl( )编制一长度为1K的消息的发送和接收程序。 观察上面程序,说明控制消息队列系统调用msgctl( )在此起
2、什么作用?,4,实验8 LINUX系统进程的消息通信,四提示: ()为了便于操作和观察结果,用一个程序作为“引子”,先后fork( )两个子进程,SERVERT CLIENT,进行通信。 (2)SERVER端建立一个Key为75的消息队列,等待其他进程发来的消息。当遇到类型为1的消息,则作为结束信号,取消该队列,并退出SERVER。SERVER每收到一个消息后显示一句“(server )received”。 (3)CLIENT端使用key为75的消息队列,先后发送类型为10到1的消息,然后退出。最后的一个消息,即是SERVER端需要的结束信号。CLIENT每发送一条消息后显示一句“(client)sent”。 (4)父进程在SERVER和CLIENT均退出后结束。,5,实验8 LINUX系统进程的消息通信,五实验源程序清单:,THE END,6,实验8 LINUX系统进程的消息通信,