《内蒙古大学《计算机操作系统》上机实验指导05:Linux进程通信》由会员分享,可在线阅读,更多相关《内蒙古大学《计算机操作系统》上机实验指导05:Linux进程通信(3页珍藏版)》请在金锄头文库上搜索。
1、计算机操作系统上机实验实验4-2进程间的通信机制背景知识:进程间通信的定义为了进程相互之间交换数据,引入了进程间通信(IPC )。常用的机制有:n 共享内存段(shared memory segment)。在内存中划分一段公共区域供多个进程共享,以达到在多进程间快速、大量的共享数据。n 管道(pipe)是先进先出的单向数据通道,可在相关进程间传递未结构化的数据流。n FIFO(即命名管道)是拥有永久名称的管道。除了上述机制之外,还有信号量和消息队列,在本次实验里不做要求:n 信号量(Semaphore)。允许进程相互同步,主要特点为,避免多个进程共享资源时的冲突。n 消息队列(Message
2、queue)。在进程间以队列形式异步传递少量数据,例如消息。而在UNIX中也有着面向客户/服务器模型而设计的,针对客户和服务器程序提供不同的socket 系统调用。我们通常可以称为套接字。n 套接字(Socket)端口式进程通信方式。类似于插槽,针对客户和服务器模型,客户随即申请一个Socket,系统为之分配一个Socket号,双方根据Socket号进行通信。实验目的:理解进程通信的概念,在前一次学习了相关进程控制函数的基础上,实现进程间的通信。实验要求:编写程序:1. 题目1:使用父进程创建四个子进程,在进程间用pipe函数进行通信。2. 题目2:使用FIFO函数进行通行,由进程A生产数据,由进程B读取数据。3. 题目3:使用管道或者套接字进行通信,编写程序建立四个进程。分别试验三写一读、两写两读情况,多次执行后观察果是否,并对记录的执行结果进行解释。计算机操作系统实验报告姓名 学号 成绩 年 月 日一、 程序功能二、 程序框图或描述三、 程序代码第 3 页 共 3 页