操作系统实验2——进程控制.doc

操作系统实验2——进程控制.doc

ID:53824753

大小:51.50 KB

页数:5页

时间:2020-04-07

操作系统实验2——进程控制.doc_第1页
操作系统实验2——进程控制.doc_第2页
操作系统实验2——进程控制.doc_第3页
操作系统实验2——进程控制.doc_第4页
操作系统实验2——进程控制.doc_第5页
资源描述:

《操作系统实验2——进程控制.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验2进程控制一、实验目的加深对进程概念的理解,明确进程和程序和区别;进一步认识并发执行的实质;分析进程争用资源的现象。二、实验内容1.熟悉Linux进程控制常用命令。2.输入进程创建、控制的程序并调试程序。三、实验预备知识1.进程控制常用命令(1)ps命令功能:查看目前的系统中有哪些进程,以及它们的执行情况。常用命令格式及功能如下:ps查看系统中属于自己的进程psau查看系统中所有用户的进程psaux查看系统中包含系统内部的及所有用户的进程主要输出列说明:USER:进程所有者的用户名PID:进程号TTY:

2、进程从哪个终端启动TIME:此进程所消耗的CPU时间COMMAND:正在执行的命令或进程名称(2)top命令功能:动态显示进程,实时监测进程状态。与ps命令相似,只是top命令在执行后会以指定的时间间隔来刷新显示信息,以使top所显示的进程状态总是当前时刻的。(3)kill命令功能:结束或终止进程。5常用命令格式及功能如下:kill5302杀死PID为5302的进程kill-95302强行杀死PID为5302的进程(4)echo$变量名功能:查看外壳变量的设定值。例:echo$$显示当前进程PID2.常用系

3、统调用函数常用系统调用函数、程序的说明、参数及定义如下:(1)fork()函数功能:创建一个新进程函数格式:intfork()其中返回int取值意义如下:小于0:创建失败0:创建成功,在子进程中返回0值大于0:创建成功,在父进程中返回子进程id值-1:创建失败(2)wait()函数功能:父进程等待子进程终止,以便对子进程进行善后处理。函数格式:intwait(int*statloc)参数定义:statloc指出子进程终止状态码的位置。若不关心子进程的终止状态,可传递一个空指针。返回值:正常返回时,为终止子进

4、程的PID;错误返回时为-1;其他为0。3.gcc简介gcc是C编译器,用来把某程序的源代码编译成汇编代码。假设我们有下面一个非常简单的源程序(hello.c):intmain(intargc,char**argv)5{printf("HelloLinux");}要编译这个程序,我们只要在命令行下执行:gcc-ohellohello.c-o选项表示要求输出的可执行文件名。-c选项表示我们只要求编译器输出目标代码,而不必要输出可执行文件。-g选项表示我们要求编译器在编译的时候提供我们以后对程序进行调试的信

5、息。如果需要更详尽的内容,可查阅gcc的帮助。4.运行程序./代表当前目录要运行当前目录下的hello程序,我们只要在命令行下输入:./hello四、实验的环境与要求1.装有Linux操作系统且安装有gcc模块的服务器一台。2.在每台学生用计算机的硬盘中存有文件putty.exe。五、实验步骤1.用putty.exe命令登录Linux操作系统。2.进程控制命令练习。(1)显示当前进程ID。(2)列出所有进程。(3)动态监视进程状态。3.运行进程创建的程序。(1)用vi编辑器分别输入以下两个参考程序:/*程序

6、1:*/#includeintmain(){intp1,p2;while((p1=fork())==-1);if(p1==0)5putchar(‘b’);else{while((p2=fork())==-1);if(p2==0)putchar(‘c’);elseputchar(‘a’);}return0;}/*程序2*/#includeintmain(){intp1,p2,I;while((p1=fork())==-1);if(p1==0)for(I=0;I<50;I++

7、)printf(“child%d”,I);else{while((p2=fork())==-1);if(p2==0)for(I=0;I<50;I++)printf(“son%d”,I);elsefor(I=0;I<50;I++)printf(“daughter%d”,I);}5return0;}(2)调试运行程序。(3)记录实验结果并对结果进行思考。4.写程序完成如下功能:(1)从命令行接收整数n;(2)创建子进程计算长度为n的Fibonacci数列并输出;(3)父进程等待子进程执行完毕之后输出

8、"Complete!"【附:TheFibonaccisequenceistheseriesofnumbers0,1,1,2,3,5,8,....Formally,itcanbeexpressedas:fib(0)=0fib(1)=1fib(n)=fib(n-1)+fib(n-2)】5

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。