进程间通信实验

进程间通信实验

ID:35460174

大小:104.11 KB

页数:7页

时间:2019-03-24

进程间通信实验_第1页
进程间通信实验_第2页
进程间通信实验_第3页
进程间通信实验_第4页
进程间通信实验_第5页
资源描述:

《进程间通信实验》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、进程间通信实验8000114134欧阳为软工143Q4:使用无名管道pipe(),进行父子进程之间的通信。A1:截图如下:parentprocesssendsantssagetochild.parentprocessMilsthrchiIdtoicrminaicThenrssagereadbychiIdprocessfromparentis:Antssagetopipe'comninicalion.childprocesstermm3tespareniprocessterminale分析:这段程序使用匿名管道,实现了同一进程组(父子进程间)的通信。首先父进程使用函数pipe()创建一

2、个匿名管道,chan1[]被填入两个文件描述符,在该程序中chan[O]负责读操作,chan[1]负责写操作;创建匿名管道之后使用fork()创建子进程,由于匿名管道是半双工的,即数据只能向一个方向流动,父进程写入数据,子进程读出,如果子进程一直不读出数据,写操作就会阻塞;程序为了保证正确通信,在父进程执行写操作时关闭读管道(close(chan1[0]));子进程读期间,关闭写管道。Q2:以命名行为参数的管道文件的示例。(假设有一个可执行程序chcase,从标准输入设备读字符,将小写字母转化成大写字母并输岀。主程序使用popen创建管道,实现蒋某文本文件中的字幕转化成大写字母,其中

3、的文本文件名作为参A2:截图如下:[root^localhosttestl]#catchcase.c#include#incl.ude#includeintmain(){int1,ten;chars[160];scant(M%sMf&s);len=strlen(s);for(i=6;i

4、lltotal128-rwxr厂・x1rootroot5107May1706:12chcase-rw-r-1rootroot228May1706:06chcase.c・rw1rootroot15May1804:12chcase.txtprwxr-xr-x1rootroot0May1723:07-rwxr-xr-x1rootroot5829May1705:18qi・rw-「•-r--1rootroot863May1722:30ql.c-rwxr1rootroot6069May1706:26q2-rw-「•-r--1rootroot837May1706:26q2.c-rwxr-xr-x1

5、rootroot5695May1722:58q3r--1rootroot700May1722:58q3.c・「・•「・•1rootroot1120May1723:34q4.c-rwxr-xr-x1rootroot5788May1804:32q5・rw-「•-r--1rootroot905May1804:25q5.c一■■亠一■■亠ircr-•r-c■5V••[root@localhostaA[root@localhostABCDEFGHIGKLMN[root@localhosttestl]#./chcasetestl]#・/q2chcase.txttestl]#

6、分析:在执行该程序之

7、前,首先编译完成字符串大小写转变程序chcase以及文本文件chcase.txto在执行该程序时,文本文件需要作为参数传入;程序首先使用fopen()打开文本文件,若文本文件存在打开成功,则使用popen()函数打开一个管道,popen()函数用创建管道的方式启动一个进程,又因为管道是单向的,所以其type参数只能定义成只读或者只写,如图:fprintf(stderr,upopenerrorN);启动进程为只写,此时popen()创建了一个只写管道,将命令行chcase的输入与管道的输入连接,向管道输入数据,进程chcase读出数据并将数据转化为大写。Q3呛I」建有名管道A3:截

8、图如下:[root@localhosttest1]#./q31&[1]7161ihavewrote:thishavewroteuhisihavewrote:vhisihavewrote:whishavewrotexhisihavewrotezyhisihavewrotezzhishavewrotehavewrotehavewrotehavewrotehavewrote:Qhishavewrotezzhishavewrotehavewrotehavewrot

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。