- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
进程创建实验报告
(计算机学院)
课内实验报告
实验名称: 进程管理-进程调度
专业名称 计算机科学与技术
班 级:
学生姓名:
学号(8位)
指导教师:
实验日期:
一. 实验目的及实验环境
1.实验目的
通过观察、分析实验现象,深入理解进程及进程在调度执行和内存空间等方面的特点,掌握在POSIX 规范中fork和kill系统调用的功能和使用。
2.实验环境
(1)硬件
CPU:Intel(R) Core(TM) i7-4710HQ CPU @ 2.50GHz
内存:8.0GB
显示器:NVIDIA GeForce GTX 850M
硬盘空间:1.0TB
(2)软件
虚拟机名称及版本:VM12.0
操作系统名称及版本:Centos6.7
编译器:GCC
二. 实验内容
1、实验前准备工作?
学习man?命令的用法,通过它查看fork?和kill?系统调用的在线帮助,并阅读参考资料,学会fork?与kill?的用法,复习C?语言的相关内容。?
2、实验内容
根据下发的Linux进程管理实验PPT内容,将实验代码补充完整。并考虑:
先猜想一下这个程序的运行结果。假如运行“./process 20”,输出会是什么样?然后按照注释里的要求把代码补充完整,运行程序。可以多运行一会儿,并在此期间启动、关闭一些其它进程,看process 的输出结果有什么特点,记录下这个结果。开另一个终端窗口,运行“ps aux|grep process”命令,看看process 究竟启动了多少个进程。回到程序执行窗口,按“数字键+回车”尝试杀掉一两个进程,再到另一个窗口看进程状况。按q 退出程序再看进程情况。
3、回答问题
编写、编译、链接、执行实验内容设计中的代码,并回答如下问题:
你最初认为运行结果会怎么样?
答:子进程按序号输出。
实际的结果什么样?有什么特点?试对产生该现象的原因进行分析。
答:子进程基本按序号输出,但有几个顺序错误,可能是某些子进程执行太快,抢占资源,导致顺序错误。
proc_number 这个全局变量在各个子进程里的值相同吗?为什么?
答:相同,因为全局变量是共享资源,所以值相同。
kill 命令在程序中使用了几次?每次的作用是什么?执行后的现象是什么?
答:执行了2次,第一次是用户自己选择杀死进程的编号,执行后该进程被杀死,不会出现在主进程中,第二次是杀死本组全部子进程,杀死后程序只剩主进程。
使用kill 命令可以在进程的外部杀死进程。进程怎样能主动退出?这两种退出方式哪种更好一点?
答:exit(0和 return(0) 可以主动退出,主动退出比较好,kill在时,部杀死进程时,可能还有未退出的子进程,所以主动退出好。
写出fork()和kill()函数原型,并解释函数的功能和参数的含义?
答:Kill:
#include?sys/types.h2?3?#include?signal.h4?5?int?kill(pid_t?pid,?int?sig);6?7?
参数:?pid:可能选择有以下四种
1. pid大于零时,pid是信号欲送往的进程的标识。2. pid等于零时,信号将送往所有与调用kill()的那个进程属同一个使用组的进程。3. pid等于-1时,信号将送往所有调用进程有权给其发送信号的进程,除了进程1(init)。4. pid小于-1时,信号将送往以-pid为组标识的进程。
sig:准备发送的信号代码,假如其值为零则没有任何信号送出,但是系统会执行错误检查,通常会利用sig值为零来检验某个进程是否仍在执行。
返回值说明: 成功执行时,返回0。失败返回-1,errno被设为以下的某个值 EINVAL:指定的信号码无效(参数 sig 不合法) EPERM;权限不够无法传送信号给指定进程 ESRCH:参数 pid 所指定的进程或进程组不存在.
参数:?pid:可能选择有以下四种
1. pid大于零时,pid是信号欲送往的进程的标识。2. pid等于零时,信号将送往所有与调用kill()的那个进程属同一个使用组的进程。3. pid等于-1时,信号将送往所有调用进程有权给其发送信号的进程,除了进程1(init)。4. pid小于-1时,信号将送往以-pid为组标识的进程。
sig:准备发送的信号代码,假如其值为零则没有任何信号送出,但是系统会执行错误检查,通常会利用sig值为零来检验某个进程是否仍在执行。
返回值说明: 成功执行时,返回0。失败返回-1,errn
您可能关注的文档
- 过敏性紫癜稿件.doc
- 过程控制1(含答案).doc
- 过程回归建模综述.docx
- 过程控制系统及应用编写提纲123.doc
- 过程控制系统应用技术编写提纲.doc
- 过程装备腐蚀与防护1~6章习题与题解.doc
- 专题7-8《FC硬盘介绍》.ppt
- 运动会工作人员.doc
- 运动会赛事广播稿件.doc
- 运动合理安排.doc
- 英语人教PEP版八年级(上册)Unit4+writing+写作.pptx
- 人美版美术四年级(上册)8 笔的世界 课件 (1).pptx
- 人美版美术七年级(上册)龙的制作.pptx
- 英语人教PEP版六年级(上册)Unit 2 第一课时.pptx
- 数学苏教版三年级(上册)3.3 长方形和正方形周长的计算 苏教版(共12张PPT).pptx
- 音乐人教版八年级(上册)青春舞曲 课件2.pptx
- 音乐人教版四年级(上册) 第一单元 音乐知识 附点四分音符|人教版.pptx
- 英语人教PEP版四年级(上册)Unit 6 Part B let's learn 1.pptx
- 道德与法治人教版二年级(上册)课件-3.11大家排好队部编版(共18张PPT).pptx
- 人美版美术七年级(上册)《黄山天下奇》课件1.pptx
文档评论(0)