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

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

ID:58023167

大小:116.00 KB

页数:5页

时间:2020-04-07

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

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

1、实验2Linux进程控制一.实验目的1.学会查看和杀死进程。2.加深对进程概念的理解,明确进程与程序的区别。3.熟悉linux下vi的使用。二.实验指导1.查看系统中的进程格式:ps[选项]例如:ps//显示当前用户在shell下所运行的进程。ps-uosmond//显示用户osmond的进程。ps-aux//显示系统中正在运行的所有进程的详细信息。2.杀死系统中的进程格式:kill[signal]PIDPID是进程的识别号;signal是向进程发出的进程信号。3.vi文本编辑工具进入Linux的字符界面,输入vifile,进入vi编辑程序。

2、vi提供了输入模式(insertmode)和命令模式(commandmode)。使用者进入vi后,即处在命令模式下,此刻键入i转换到输入模式。在输入模式下,按ESC可切换到命令模式。命令模式下,常用的指令有::q!离开vi,并放弃刚在缓冲区内编辑的内容:wq将缓冲区内的资料写入磁盘中,并离开vi:n光标直接跳到第n:w将当前编辑的内容存盘ESC离开输入模式4.有关进程控制系统调用函数名调用格式功能fork()intfork()例:pid=fork();创建一个新进程,fork()返回值意义如下:0:在子进程中,pid变量保存的fork()返回

3、值为0,表示当前进程是子进程。>0:在父进程中,pid变量保存的fork()返回值为子进程的id值(进程唯一标识符)。-1:创建失败。execl()intexecl(新程序名,0)重新加载进程,用新程序替换原进程。如execl("bin/ls",0);用bin/ls替换原进程。wait()intwait(intstatus)例:wait();等待子进程运行结束。如果子进程没有完成,父进程一直等待。wait()将调用进程挂起,直至其子进程因暂停或终止而发来软中断信号为止。如果在wait()前已有子进程暂停或终止,则调用进程做适当处理后便返回。e

4、xit()voidexit(intstatus)终止进程的执行三.实验内容1.请在字符界面下完成下列作业控制操作:显示当前运行的进程运行cat命令5cat>example输入若干字符如thisisaexample.新建一个终端窗口,显示当前运行的进程杀死cat进程2.vi工具的使用(1)进入Linux的字符界面,输入vi,进入vi。例:$vihello.c(2)利用实验指导中的相关内容完成在屏幕上显示“Helloworld”的C语言源程序hello.c的创建。保存上述程序,并退出vi。3用gcc编译上述C程序,并运行之。编译:gcc–ohel

5、lohello.c运行:./hello4进程控制之一:(1)先在vi窗口中编写下列程序:使用系统调用fork()创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示“a“;子进程分别显示字符”b“和字符“c”。(2)保存上述程序,并退出vi。(3)编译并多次运行上述程序,分析运行结果。参考程序}55.进程控制之二:分析下列程序的运行结果,getpid()函数为取当前进程号。6.进程控制之三:分析下列程序的运行结果5进程控制之四:创建一个子进程输出pid,并给它加载新程序hello,

6、hello即上述显示“Helloworld”程序和pid。提示:创建程序parent.c,在该程序中创建子进程,在子进程分支中用execl加载hello。四.实验报告(1)需给出实验课题、目的与主要内容要求。(2)实际进行的实验详细记录:完整的命令串或程序、执行结果、结果分析。55

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

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

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