实验 用C编程实现进程(旧版).doc_第1页
实验 用C编程实现进程(旧版).doc_第2页
实验 用C编程实现进程(旧版).doc_第3页
实验 用C编程实现进程(旧版).doc_第4页
实验 用C编程实现进程(旧版).doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

广州大学华软软件学院 网络操作系统本科实验 LINUX进程管理 用C编程实现进程 目标: 在LINUX系统环境中使用C程序创建进程 尝试理解LINUX 系统进程的父子派生关系 尝试理解新建子进程如何执行自己的代码实验准备: LINUX系统服务器 gcc 编译环境 vi 文本编辑器提示及建议: 这此实验不要求读者掌握LINUX系统中的C语言编程,只要求掌握可以建立GCC的编译环境,并且可以使用其编译源程序即可。 实验中的C源代码,不推荐在WINDOWS环境中使用文本编辑软件创建,除非你很清楚LINUX和WINDOWS 处理文本的不同。 对系统文件所做的任何修改都要记录在操作日志栏中。 操作命令语法可查看“man”联机帮助文档练习内容:1. 执行命令,查看“gcc”的版本信息#gcc v记录:gcc version 3.4.4 20050721 (Red Hat 3.4.4-2)2. 使用vi 编辑器建立程序源代码文件prog1.c。prog1.c #include #include #include #include Int main() pid_t pid; if (pid=fork()0) printf(“fork error ,bye! n”); exit(1); if (pid=fork()=0) printf(“Child process running.n); else printf(“Parent process running. n”); printf(“who! n”): return 0;3. 使用gcc 命令编译,然后执行程序prog1,记录执行结果。#gcc o prog1 prog1.c#./prog1记录:Child process running.who!Parent process running.who!Child process running.who!Parent process running.who!思考:分析为什么程序执行中会输出两次“who?”回答:4. 使用vi 编辑器建立程序源代码文件prog2.c,参考程序prog1的编译过程,编译执行程序prog2,记录程序执行结果。Prog2.c #include #include #include #include Int main() pid_t pid; if (pid=fork()0) printf(“fork error ,bye! .n”); exit(1); if (pid=fork()=0) printf(“Child process running.n); if (execl(“/bin/ls”,”ls”,”-1”,NULL)0) exit(1): else printf(“Parent process running. n”); printf(“who! n”): return 0;记录:Child process running.Parent process running.who!Child process running.Parent process running.who!思考: 分析程序prog2 的执行结果回答:思考:运用vi 编辑器建立下面的文件,并分析程序的执行结果#include #include #include int main() pid_t pid; pid=fork(); if(pid0) printf(“fork error.n”); exit(0); else pid=fork(); if(pid0) printf(“fork error. n”); exit(0); else pri

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论