西安邮电大学Linux进程管理报告.docxVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
— PAGE \* Arabic 1 — 西安邮电大学Linux进程管理报告 西安邮电大学 (计算机学院) 课内实验报告 实验名称:进程管理 专业名称:软件工程 班级:1101班 学生姓名: 学号(8位) 指导教师:黄茹 实验日期:2013年12月20日 一.实验目的及实验环境 (一)实验目的 (1)加深对进程概念的理解,明确进程和程序的区别。 (2)进一步认识并发执行的实质。 (3)学习通过进程执行新的目标程序的方法。 (二)实验环境 Ubuntu 11.10 二. 实验内容 (1)编程实现由一个父进程产生3个子进程,并且给三个子进程传递不同的参数,收到‘a’的子进程在显示器上输出乘法口诀表;收到‘b’的子进程计算10!;收到‘c’的进程计算1+2+3+……+19+20的结果。 (2)execve函数的应用,要在程序执行时设定环境变量,路径为tmp,用户为liu,执行命令env时把这些环境变量传递给系统。在这一函数中,参数e表示可传递新进程环境变量,参数v表示传递的参数(含命令)为构造指针数组,文件查找需给出路径。命令env在“/bin”目录下。把环境变量设定为: char *envp[]={“PATH=/tmp”,”USER=liu”,NULL};参数的构造指针数组为:char *arg[]={“env”,NULL};因而此函数的调用形式为:execve(“/bin/env”,”env”,envp);请编写程序进行调试。 三.方案设计 实验一: 先编写函数a,b,c,分别保存,然后编写主函数,在主函数中的三个进程中通过参数传递分别调用函数a,b,c,输出运行结果。 实验二: 环境变量设定为:char *envp[]={“PATH=/tmp”,”USER=liu”,NULL};参数的构造指针数组为:char *arg[]={“env”,NULL};函数的调用形式为:execve(“/bin/env”,”env”,envp)。 四.测试数据及运行结果 1.正常测试数据(3组)及运行结果; 2.非正常测试数据(2组)及运行结果。 五.总结 1.实验过程中遇到的问题及解决办法; 刚开始实验时,由于不熟悉fork()函数的使用方法和功能,所以对于程序的编写有点困难,对程序的运行结果看不明白,不懂为什么父子进程均会输出。翻阅书籍并上网查找资料,掌握了进程的知识及相关函数的功能后,才发现原来这部分知识并不是很难。 2.对设计及调试过程的心得体会。 通过本次实验,我发现进程对于操作系统来说十分重要,不容小视。掌握好进程的有关知识很有必要。其次,遇到问题不要逃避,请教老师和同学,自己查阅资料,一定要将问题解决。本次实验结束后,我对于进程的了解更加深刻,编程能力也得到了进一步提升。 六.附录:源代码(电子版) 1.c代码: #include #include #include #include int main(int argc,char * argv[],char ** environ) { int i; pid_t pid1,pid2,pid3; int stat_val; for(i=1;i #include int main (int argc,char *argv[],char **environ) { unsigned long long int sum=1; int i; for (i=1;i #include #include int main (int argc,char *argv[],char **environ) { int i; int sum=0; for(i=1;i #include int main() { char *envp[]={PATH=/tpm,USER=liu,NULL}; char *arg[]={env,NULL}; printf(the sysytems pid :%d

文档评论(0)

泰和宸风 + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体泰和宸风文化科技(青岛)有限公司
IP属地山东
统一社会信用代码/组织机构代码
91370211MA94GKPQ0J

1亿VIP精品文档

相关文档