下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
GDOU-B-11-112广东海洋大学学生实验报告书(学生用表)GDOU-B-11-112实验名称进程间通信课程名称操作系统课程号学院(系)软件学院专业软件工程班级学生姓名学号实验地点实验日期一、实验目的1、利用文件锁机制,实现多进程共享一个文件,具体过程和要求参照课堂讲解。2、利用双向管道机制实现进程间通信,父子两个进程,第一个进程从键盘输入多个整数(以-1表示整数序列的结束,-1不属于其中),每输入一个整数,便立即通过管道传送给第二个进程;第二个进程对收到的数据进行排序(排序算法同学们自选,冒泡、选择、堆…均可),排序结果通过管道传递给第一个进程;第一个进程显示排序结果。选做题:利用LINUX进程间共享内存机制实现第2题,亦即将管道用共享内存机制来代替。实验内容(1)新建文件,编辑程序如下:#define_POSIX_SOURCE#include<stdio.h>#include<stdlib.h>#include<fcntl.h>#include<sys/types.h>#include<unistd.h>#include<stdarg.h>#include<string.h>#include<sys/file.h>intmain(intargc,char*argv[]){intnum,fd,i;FILE*f;charbuff[100];fd=open("number.txt",O_RDWR);flock(fd,LOCK_EX);if(fd<=0){printf("openerror\n");return1;}f=(FILE*)fdopen(fd,"r+");if(f==NULL){printf("fdopenerror\n");return1;}for(i=1;i<=100000;i++){lseek(fd,0,SEEK_SET);fscanf(f,"%d",&num);sprintf(buff,"%d\n",num+1);lseek(fd,0,SEEK_SET);write(fd,buff,strlen(buff));}flock(fd,LOCK_UN);fclose(f);return0;}执行结果如下:(1)新建文件,编写程序如下:#include<stdio.h>#include<unistd.h>#include<sys/types.h>#include<string.h>intmain(){intfd1[2];intfd2[2];pid_tpid;pipe(fd1);pipe(fd2);pid=fork();if(pid==0){close(fd1[1]);close(fd2[0]);intnum;intsum=0;charstr[10];while(read(fd1[0],str,100)>0){sscanf(str,"%d",&num);printf("receiveanumber:%d\n",num);fflush(stdout);sum+=num;}close(fd1[0]);sprintf(str,"%d",sum);write(fd2[1],str,strlen(str));close(fd2[1]);_exit(0);}else{intn;charstr[10];close(fd1[0]);close(fd2[1]);while(1){scanf("%d",&n);if(n==-1)break;sprintf(str,"%d\n",n);write(fd1[1],str,strlen(str));}close(fd1[1]);read(fd2[0],str,100);close(fd2[0]);printf("\nsumis%s\n",str);fflush(stdout);_exit(0);}
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年中医耳鼻喉科肺胃热盛急喉痹辨证测试卷及答案
- 2026年职级晋升材料经办试卷(带答案)
- 钢筋切断机操作安全技术交底培训
- 易燃液体火灾扑救安全培训:基本对策与实践指南
- 锅炉爆炸事故预防与安全管理培训
- (2026年)医院感染管理制度与职责
- (2026年)消防安全制度
- 国内GEO优化服务商:六大评估维度与三大代表平台能力矩阵
- 2025年河南省焦作市修武县数学三年级下学期期中统考模拟试题含答案
- 2025年河南省南阳市方城县部分校数学四下期末复习检测模拟试题(含答案解析)
- 2025年陕西、山西、青海、宁夏高考政治试卷真题(含答案解析)
- 卵圆孔未闭规范化诊疗专家共识解读课件
- 颂钵疗愈师培训
- 《出纳实务》高职财经专业全套教学课件
- GB/T 25052-2024连续热浸镀层钢板和钢带尺寸、外形、重量及允许偏差
- DL∕T 2041-2019 分布式电源接入电网承载力评估导则
- 高职应用语文教程(第二版)课件 5平凡的世界(节选)
- 电信渠道建设方案
- 有机绿色蔬菜种植项目立项报告
- 门楣改造施工方案
- 新媒体技术与应用PPT全套完整教学课件
评论
0/150
提交评论