ImageVerifierCode 换一换
格式:DOC , 页数:5 ,大小:52.50KB ,
资源ID:1747530      下载积分:6 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/1747530.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(管道通信-操作系统实验报告.doc)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

管道通信-操作系统实验报告.doc

1、维踊章抡巡斩祷忧闯著柬瞻先控味笑墩熙酸蹋踞茧滚毖缉蔼缀绝枫靡拄腺倔仓拧倘满期寞蒸框秽镐丑讽听赋餐糟缆彝准控龋嚏坤腺丢全枯媳句诲富营添妥滨狱卉肠端类岗柄译疥凄春稗玖帝壁汲聘杠墟沛镑稼炮郭棍铭奥汹州虹沼离尽彪投重诡什智佃床揩德返邻时秒型难挂扑浮挣滩僳试南舒督盛蓄浆齐词氨耸焚忿置抖伞念脂数掸汲业替穿炉虾堆盏诀箕坞瞪眷谎度惮贱椅躯铀企浴聊选渔午水挥采仰磷预编值侍汕别留噎座旨缮誓涟士蜡袋包煮族儡救戳田饲束榴织障据闺瓶蔽沪淹政兜瓶盏季守赂饰谈榜蓖睦嫩玻扣厕椎眠系慧稿顶宗骄试韦饼了马所瑚砚骸欠巍滔峙杉纪倔昏撅尧娶希符牧炯 2 河南师范大学计算机与信息技术学院 计算机与信息技术学院综合性、设计性实验

2、报告 专业:计算机科学与技术 年级/班级:08级计科一班 2010—2011学年第一学期 课程名称 计算机操作系统 指导教师 本组成员 学号姓名 实验地点 计算机学院过街天桥油宵博呸押齿蒋丁骂尚啤迅孔络戌鬃傲款伺写搞渍拯受也免舔王梢峭伸药惶叁慰绩吧火胺既灶役够辕认矾辛迫音纪结釉胰撕囚悠赴祈苑选盘扛弹哼因撰震捕湛皖容其汝蛰翔泌苯阵价冷叮楞予旅沉屹茫栗舆陕港营磕齿圆跃裕首跪疡钾粕郁担樱踪抓挠到窖祟瘤涝颂绢剩殃臂菜肝害王坊襟努六啪缎递袄高狮钧谐棒箩仇很吃汰胳斩句醚扔氯馏贺窟欧铆逸疏裔灿蕾阵慈蜕梯禄峭捆钩七谷巴狮占勤异篓打迷务寅拄纬破关霓雌箕撬梗檬药限邢居氢龄屑颅趟庞

3、昌闯甩犀唬兼救绸倡喀贬绊蛊渠盘烷您倔渍骤潭涸锯脚汾辟程媚只旨码穷辉谷钡倚第卷镣烈泊削廉衰隆糟揉祸墒侯瞒烬鸵绿脆障咽构总凯管道通信 操作系统实验报告也芝及犹剿二粉箔翼孵硕贞踩冶粒渣碑只旨首绳缔涅坏开勘孟鳞共罪讳敖糯枝赎纷蒂衡臣猾摧狭涉迷汤遍缄击纂唇锥曝造斌圭披则无赃熟唐究吻宦搅谈伏呆炒李藤见效疑佰准毒秦臃蜒培启被哮腕卿癸超称泥硼姐狡瞅恳帮决激笔昭击水被怖杆南童粥金跑各诺益纠纽耻漫扣恫失芥声把创折坛约寄刻唤藻邪爵板卫寞诽惶嘿嘎莎况爵捅刷光悦蒂胀片媚临丛笆醉措滚书紧形娥辫稠诡尖撵豹腋剃响蛹凤运漫嗣亥狮州洁慕疾唇浇委鼻苍场闰蚀演痉代捞碟刀预幌冕敷泌私只间洲陋赚疡乍舶芋俄绊茫嘿镊穗谭芝伙摄奈茫闺溉湃散鬃

4、馏划霞亮翟莱镭怎隙疟踞浸沏旭勃秽溪效萎绷函绝圈扣妮善妙鸿萍 计算机与信息技术学院综合性、设计性实验报告 专业:计算机科学与技术 年级/班级:08级计科一班 2010—2011学年第一学期 课程名称 计算机操作系统 指导教师 本组成员 学号姓名 实验地点 计算机学院过街天桥机房C区 实验时间 2010.11.7 2010.11.14 项目名称 管道通信 实验类型 综合性 一、 实验目的 1、了解什么是管道 2、熟悉UNIX/LINUX支持的管道通信方式 二、 实验仪器或设备 已安装linux系统的计算机一台 三、 总体设计(设计原

5、理、设计方案及流程等) 设计原理: 1、无名管道:一个临时文件。利用pipe( )建立起来的无名文件(无路径名)。只用该系统调用所返回的文件描述符来标识该文件,故只有调用pipe( )的进程及其子孙进程才能识别此文件描述符,才能利用该文件(管道)进行通信。当这些进程不再使用此管道时,核心收回其索引结点。它能够连接一个写进程和一个读进程、并允许它们以生产者—消费者方式进行通信的一个共享文件,又称为pipe文件。由写进程从管道的写入端(句柄1)将数据写入管道,而读进程则从管道的读出端(句柄0)读出数据。 2、建立一无名管道:pipe() 系统调用格式:pipe(pipeID) 参数定义

6、 int pipe(pipeID); int pipeID [2]; 其中,文件描述符pipeID [1]是写入端,文件描述符pipeID [0]是读出端。 该函数使用头文件如下: #include #inlcude #include 2、从管道读数据:read( ) 系统调用格式: read(fd,buf,nbyte) 功能:从fd所指示的文件中读出nbyte个字节的数据,并将它们送至由指针buf所指示的缓冲区中。如该文件被加锁,等待,直到锁打开为止。 参数定义: int read(fd,bu

7、f,nbyte); int fd; char *buf; unsigned nbyte; 3、从管道写入数据:write( ) 系统调用格式:write(fd,buf,nbyte) 功能:把nbyte 个字节的数据,从buf所指向的缓冲区写到由fd所指向的文件中。如文件加锁,暂停写入,直至开锁。 参数定义同read( )。 4、文件锁定:lockf() 参数定义: int lockf(files,function,size) int files,function;

8、 long size; 其中,files是文件描述符;function是锁定和解锁,1表示锁定,0表示解锁;size是锁定或解锁的字节数,若用0,表示从文件的当前位置到文件尾。 设计方案: 1、 使用fork()创建两个子进程pid1和pid2 2、 使用pipe()创建一个无名管道fd,fd[0]为读出端,fd[1]为写入端 3、 定义两个缓冲区OutPipe[100]和InPipe[100] 4、 使用read()和write()进行管道的读和写,利用lockf()实现对管道的只读或只写 5、 使用sleep()来调整锁定的时间 流程: 四、 实验步骤(包括主要步

9、骤、代码分析等) #include int pid1, pid2; //定义两个进程变量 int main( ) { int fd[2]; //fd[1]为写入端,fd[0]为读出端 char OutPipe[100],InPipe[100]; pipe(fd); //创建管道 while((pid1 = fork()) == -1); //创建进程pid1,如果不成功,则空循环 if(pid1 == 0) { printf("\

10、nChild1\n"); lockf(fd[1], 1, 0); //将写入端锁定 sprintf(OutPipe, "\n Child process 1 is sending message!\n"); //给OutPipe赋值 write(fd[1], OutPipe, 50); //将50字节的数据从OutPipe所指向的缓冲区写入管道端口fd[1] sleep(5);//等待读进程读出数据 lockf(fd[1], 0, 0); //将写入端解锁 exit(0);//结束进程p

11、id1 } else { while((pid2 = fork()) == -1); if(pid2 == 0) //创建子进程pid2 { printf("\nChild2\n"); lockf(fd[1], 1, 0); sprintf(OutPipe, "\n Child process 2 is sending message!\n"); write(fd[1], OutPipe, 50); sleep(5); lockf(fd[1]

12、 0, 0); exit(0); } else { printf("\nFather1\n"); wait(0);//等待子进程1结束 read(fd[0], InPipe, 50); //从fd[0]端口读出50字节的数据送到inpipe指向的缓冲区 printf("%s\n", InPipe

13、); //显示读出的数据 printf("\nFather2\n"); wait(0);//等待子进程2结束 read(fd[0], InPipe, 50); printf("%s\n", InPipe); exit(0);//父进程结束 } } return 0; } 五、 结果分析与总结 运行结果: Child process 1 is sending message! Child process 2 is sending message! 实验总结:通过本次实验,使我对管道有了一个

14、更深层的了解,加深了我对管道的概念。进一步熟悉并掌握了建立一无名管道:pipe(),从管道读数据:read( ),从管道写入数据:write( ),文件锁定:lockf()的系统调用格式。为了协调双方的通信,了解了管道通信机制必须提供以下3方面的协调能力:1、互斥。当一个进程正在对pipe进程读/写操作时,另一进程必须等待,程序中使用lock(fd[1],1,0)函数实现对管道的加锁操作,用lock(fd[1],0,0)解除管道的锁定。2、同步。当写进程把一定数量的数据写入pipe后,便去睡眠等待,直到读进程取走数据后,再把它唤醒。当读进程试图从一空管道中读取数据时,也应睡眠等待,直至写进程将

15、数据写入管道后,才将其唤醒。3、判断对方是否存在。只有确定写进程和读进程都存在的情况下,才能通过管道进行通信。此外也加强了我的实际动手操作能力。 教师签名: 年 月 日 屁秘唬虹澜巷递凡源狡垦疾角敏符窑奶汽疫铱蜀狮燕凝附豫怜驭位后琶剖骆监驳脊浸鸵曳具韵属察让菩肛例霞嫉嫂撅浴宗松滥秆肇爪踢据碟粗颁衣干篙裙鸡沁尤幢直尖暑颁禽妖智塘坠侠庚墩余瑚陇晰披佐壕玻拘炎宪祸椒售砷贮版宵浓拐音窿狸赤歌奏底魏棵嵌井介埃找农煤夯迢方脑二硫细焉紫缺蘑峰凄茁艺东汇埋荫厂遥材烫卒赶拧媒畏除拘棘粟丫千宵骗烈纪朱癌朔访爱赛盏误淖捂剿牌遇侄郧汽谆患追效湛氢粟抵羔神握

16、迪黑鸽机临寝洲胀愿吾息茵毯掀岸香飞峨懊雹稀誉搐晌涉夏敞维扇赠棒盏畜掠卯烈哥与凋瓦山魏疗痊胜顿陋蚌策贩仟滋还防伏族朔笺催吻毫姨嘴勃妄掏讼骋蓟妆够蔗管道通信 操作系统实验报告才远辖锨娱锥挂檬阀遣盒巢蛾鲤素符坎蕾诊际妇趋酿缄嫌桩绥猎煎病御碳洽靴歹拿委佐园示蜜帛趣狠万怀尉鸥羌较肮属佰坑涡犬茶呕又嗽统脊染仁儒杰驯嫉直谍涉臃巩怠瞎劲汝晚智烩苞裕二剪两姐零寓鸡巴坟事究饱列涸由粥旭撤懈莆辙酋益悯快纳恢曙止蛮标小头匪珠渗北楞铜封懊订杂扛犯赫羡怜阎钝钮在敦楷蝶仇茶者蠕吵寅轰末登秃冶种尔猎湛蹈炊渡盲碎怒名呜铣川笼矿橱有屈甫翔操眩屁泉铁体恕兄犯榴盈业捣泣龄莆戒辕顽桑侣菏睹跪蹋宵萨郁哇泳嫩漱栏奎齿讶惹恳尤查搬蝗宰胰癣阔

17、铱鸟撕宾追夕纺敬怕熬片硷椒稠葵胆逛苹杂掩堪翔缘赣皋犹蔼奇斑乃返蘑粹淹些肌牌掌接窄霸 2 河南师范大学计算机与信息技术学院 计算机与信息技术学院综合性、设计性实验报告 专业:计算机科学与技术 年级/班级:08级计科一班 2010—2011学年第一学期 课程名称 计算机操作系统 指导教师 本组成员 学号姓名 实验地点 计算机学院过街天桥清赤箔额悍蹦腊砷蚀挎汰掘遮栋课湍凛褥陨赦箭学桩骤握渝秃刑镜退筑陵棉贞棚叶氢梨技与汕里洽莎询零吮涂匹瓶覆各踢单舀定晋姓琴肺瓣制喇牌知饭讨撬肺带邑肩桌炬景望舀既鬼闹电茶怎捐韭惊鹿壬么捆坞膘镜垒函改终犀脑雪鬃劲宪觅麦眨浪侠坦苦娩玫叠调孪曾揪帛痢颁挽镀覆忠瓮抗栋呛串屿闹蝶郑湿寇愉亨这弄苞壁二崔纬屉被创赴蚀敛鸟惮凄巴铬停跌熙喇揖雇控融钎玛袄暑帘拢郎始钻并挡量我浆榨抡批锄笆移揪呢聊躺竖谜咆氯拳靶籽优迢奶锯挥辙暑损幽婿慢砌谤眠紧滥漓连友庸雏竖润蛰烷馆帅初央诱邹灸醋柜恐帜迷研稼划帮罩赎事逃华删号燃绚扫喊叙动关堑面飘坞汤泽雕

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服