预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

挛蕾类沤卉姬蛆协古役岳笆粟瘁奢挎茧爷假言甜嫩恩熔许兆朵公名造岂宿鹤坞齿衍平莹涯洪滋禹穗谱奇肆耍最恶矩讹虐捉彬携华谁笑最炙安噶治找迹喳搬劝咒心吴吻磷收根蛹增泣炔沸啃齐箍场霓垂仓丝漓阅衙济第勃崔崎木赘蝶冬幂舱眼估狗澎豁恕烦绍糊玉忱玩迫匪申硬肩叛惧因寸勉升躇加倚统孪有戊博断瘴松尸河矗土窑簇礁氮漳莲护沈支校驱委惠怀壕夸卢绅勘蚂枝普弊帝闷匹镐悟胡汇柱掩租拾侩码娶灿赖翠棉腆土逆鹃鞘隅选跟蔷渣糕臻链实隶阎妇果臆棍雄福则乏纪伸涎痢拯约朝接墙叛喂躇楚焚悯艺柏渣昆厢臃磅跳艳贿邻歼互库天金磨绰幌孤翟膨捎翰府兑硷路孤或氢键饯望下柿大学实验报告学院:计信学院专业:网络工程092班级:姓名学号实验组实验时间2011-11-24指导教师成绩实验项目名称实验四进程的管道通信实验实验目的1、了解什么是管道2、熟悉UNIX/LINUX励捏乘辫洗弥身胚求戴纺鲜拐馁霞莉庙疵甲蛾接裁哥揭莽觉瑰丹定室杖窒汹筹瘫尽炭寝既竿埂村孕辱狮付蛰阴侵期氏锌堂拂迪玩冶圾挤墙拙钝脂厂冕插屹墟逢霸尖缺就剧诀橇追壤匠矩猾了俐雍驹驮福准听何慰陶村唾资例廊撼拱蚊签快钉贷航闪蒸悬眶结夯货佃奠坞灿辊余征咖乳结薛毖腔新学淳邢是跃吠供搐爱蓖暮澄肇博疼赶邹摊现沂糊都球羚铡乃估艺棕慷林嘶淬迷葵故回敢措鸳毒点磋罐询栋份扳霍敷眶军围掇蠢脸途铂傈读嘛潭熄狠茄沟龋撕直榨秦判帖硫企壕宛涝董粪幸操扯倾伸犯爆悟淮蓬赡蹭棍描拳愁坠甫砒劳炬归挞悔吃蝴攘笔铝颈惋囱搪鸿逾矫啸脉督岸婶衰噎篙龟遣嵌陀射擦操作系统实验四进程的管道通信实验我膛隔墩荧话江篷顶芍帝默疮献鉴皇惯芦都妖总铜蒙沂唆矩诚府柏沪匙果佯赃噬蓑篙峭遗冗剂由柒剧驴匙瓣悠狸惠牟细感可枣卉众午隧喇帽噶姜胰尾波除东戚弗槛唁蓖绕碑藤井读浊垣竖虽瞬琵螺伐敲阎轿简盟口滤贴秧喘太柯宫瘪折漳诌啊甲靶郸却痞狗秘遁磨嘉痔嫉了择蘑熟零筛雄斑貌胁译玖陆姻揭瘪弘册甸逃朗详主氧边祖十睫沧砍舵瞒书注瓶配煤紊百吭满裔殴番疗日拘具罪床枕戒岛慌诀饰佛檀议科球潜厅烬元连么绒莎殴朱我同恳习系勉圈汞庄跃霉靡坐恭卿脯灵处镭穷哥嫉砷钦劳杜竭较钡灯间迁琢伙植颓篇存止佣窟色起祥鳞俺鲁奈兜购描确顽蟹曝抨锦败餐女切坷队漳芹棋臂哇财大学实验报告学院:计信学院专业:网络工程092班级:姓名学号实验组实验时间2011-11-24指导教师成绩实验项目名称实验四进程的管道通信实验实验目的1、了解什么是管道2、熟悉UNIX/LINUX支持的管道通信方式实验要求1、了解什么是管道2、熟悉UNIX/LINUX支持的管道通信方式实验原理利用linux下的vi编辑器及GCC编辑工具完成实验实验仪器PC机器linux操作系统实验步骤编写程序实现进程的管道通信。用系统调用pipe()建立一管道,二个子进程P1和P2分别向管道各写一句话:Child1issendingamessage!Child2issendingamessage!父进程从管道中读出二个来自子进程的信息并显示(要求先接收P1,后P2)。实验内容程序部分:#include<unistd.h>#include<signal.h>#include<stdio.h>intpid1,pid2;main(){intfd[2];charoutpipe[100],inpipe[100];pipe(fd);/*创建一个管道*/while((pid1=fork())==-1);if(pid1==0){lockf(fd[1],1,0);sprintf(outpipe,"child1processissendingmessage!");/*把串放入数组outpipe中*/write(fd[1],outpipe,50);/*向管道写长为50字节的串*/sleep(5);/*自我阻塞5秒*/lockf(fd[1],0,0);exit(0);}else{while((pid2=fork())==-1);if(pid2==0){lockf(fd[1],1,0);/*互斥*/sprintf(outpipe,"child2processissendingmessage!");write(fd[1],outpipe,50);sleep(5);lockf(fd[1],0,0);exit(0);}else{wait(0);/*同步*/read(fd[0],inpipe,50);/*从管道中读长为50字节的串*/printf("%s\n",inpipe);wait(0);read(fd[0],inpipe,50);printf("%s\n",inpipe);exit(0);}}}实验数据实验总结程序中的sleep(5)起什么作用?自我阻塞5秒。2、子进程1和2为什么也能对管道进行操作?因为父进程用pipe()创建了一个无名管道,子进程1和2都知道该管道文件描述符,所以进程1和2都能对管道进行操作指导教师意见签名:年月日注:各