资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
实验一 linux进程的创建与控制【实验目的】 1、加深对进程概念的理解,明确进程和程序的区别; 2、进一步认识并发执行的实质; 3、分析进程争用资源的现象,学习解决进程互斥的方法; 【实验环境】编程环境:TC或者VC操作系统软件: linux 【准备知识】 一基本概念 1、进程的概念;进程与程序的区别。 2、并发执行的概念。 3、进程互斥的概念。 二系统调用 系统调用是一种进入系统空间的办法。通常,在OS的核心中都设置了一组用于实现各种系统功能的子程序,并将它们提供给程序员调用。程序员在需要OS提供某种服务的时候,便可以调用一条系统调用命令,去实现希望的功能,这就是系统调用。因此,系统调用就像一个黑箱子一样,对用户屏蔽了操作系统的具体动作而只是控制程序的执行速度等。各个不同的操作系统有各自的系统调用,如windows API,便是windows的系统调用,Linux的系统调用与之不同的是Linux由于内核代码完全公开,所以可以细致的分析出其系统调用的机制。 三相关函数。 1 fork( )函数 fork()函数创建一个新进程。 其调用格式为:int fork(); 其中返回int 取值意义如下: 正确返回: 等于0:创建子进程,从子进程返回的ID值; 大于0:从父进程返回的子进程的进程ID值。 错误返回: 等于1:创建失败。 2 wait( )函数 wait()函数常用来控制父进程与子进程的同步。在父进程中调用wait()函数,则父进程被阻塞,进入等待队列,等待子进程结束。当子进程结束时,会产生一个终止状态字,系统会向父进程发出SIGCHLD信号。当接到信号后,父进程提取子进程的终止状态字,从wait()函数返回继续执行原程序。 其调用格式为: #include #include (pid_t) wait(int *statloc); 正确返回:大于0:子进程的进程ID值; 等于0:其它。 错误返回:等于1:调用失败。 3 exit( )函数 exit()函数是进程结束最常调用的函数,在main()函数中调用return,最终也是调用exit()函数。这些都是进程的正常终止。在正常终止时,exit()函数返回进程结束状态。 其调用格式为: #include void exit(int status); 其中status为进程结束状态。 4 kill( )函数 kill()函数用于删除执行中的程序或者任务。 其调用格式为: kill(int PID,int IID); 其中:PID是要被杀死的进程号,IID为向将被杀死的进程发送的中断号。关于Linux下的C语言编程 1)编辑器可使用vi 2)编译器使用gcc 格式:gccoption filename 例如:gcc -o main main.c 主要的option -o 指定输出文件名(不指定则生成默认文件a.out) 其它的参数见帮助(man gcc)
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号