进程

来源:互联网 发布:灰度共生矩阵 svm 编辑:程序博客网 时间:2024/05/23 21:49

1、进程是一个具有独立功能的程序的一次运行活动,也是资源分配的最小单元

2、程序和进程的区别:①程序是放在磁盘里的可执行文件,进程是程序执行的异性实例

                                          ②程序是静态的,进程是动态的

                                          ③程序是长久的,进程是暂时的

3、进程的组成为:程序、数据、进程控制块

4、进程的生命周期:①创建:父进程生成子进程,也可以由子进程生成子进程

                                       ②运行

                                       ③消除

5、进程的状态:运行,就绪,准备

6、进程分为:数据段、代码段、堆栈段

7、PID:标识进程的唯一数字

8、进程同步:一组并发的进程,按照一定的顺序执行,具有同步关系的一组进程为合作进程

9、进程调度:按照一定的算法,从一组待运行的进程中选出来的一个战友CPU

10、调度算法:先来先服务、短进程优先调度、高优先级优先调度、时间轮片转法

11、死锁:因为竞争资源而形成的一种僵局,若无外力作用,则进程永远不会向前推进

12、getpid

       函数的作用:获取进程的识别码、进程号

       函数的原型:pid_t  getpid(void) 

       返回值:目前进程的进程号

       头文件:#include <unistd.h>

       获取父进程用:getppid

13、fork

       函数的作用:创建一个进程              父、子进程执行的顺序不确定

       函数的原型:pid_t  fork(void)

       函数的返回值:< 0:出错;

                                = 0:表示当前创建的是子进程;

                                >0:表示当前创建的是父进程,返回值是子进程的进程号

        性质:创建的子进程吧父进程的资源拷贝了一份,父子进程吧所有的程序全部执行一遍

14、vfork

        函数的作用:创建一个新的进程

        函数的原型:pid_t vfork();

        特点:子进程先运行,退出,父进程才能进行;

        性质:创建的子进程和父进程共享数据空间,而不是重新拷贝

15、system

       函数的作用:执行一个命令

       函数的原型:int  system(const char*string)

16、wait

       作用:进程的等待,阻塞进程,等待某个子进程的退出

       原型:pid_t wait(int *status)

       返回值:成功:子进程的PID

                     失败:-1

17、waitpid

        函数的作用:等待退出,等待信号,或者指定的进程结束

        函数的原型:pid_t waitpid(pid_t pid, int *status, int options) 

        函数的参数:pid < -1:等待进程pid绝对值得任何子进程

                             pid = -1:等待任何子进程,相当于wait

                   pid = 0 :等待进程组识别码与目前进程相同的任何子进程

                 pid > 0 :等待进程号为pid的子进程退出

                 options:WNOHANG 如果没有子进程退出,马上返回不等待

    WUNTRACED:如果子进程进入暂停执行状态,马上返回

        返回值:如果执行成功,返回子进程

        失败:-1

18、exit

        函数的作用:正常结束程序

        函数的原型:void exit(int status)

        返回值:无



小结:1、返回子进程PID的函数有:wait、waitpid、fork

           2、创建进程的方法有:fork、vfork

0 0
原创粉丝点击