一、进程
进程的概念
指在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个能独立运行的活动实体。
当一个程序开始运行时,它就是一个进程,进程包括运行中的程序和程序所使用到的内存和系统资源。
而一个进程又是由多个线程所组成的。
进程一般由程序、数据集合和进程控制块三部分组成。程序用于描述进程要完成的功能,是控制进程执行的指令集;数据集合是程序在执行时所需要的数据和工作区;程序控制块(Program Control Block,简称PCB),包含进程的描述信息和控制信息,是进程存在的唯一标志。
进程的创建
有四种事件导致进程的创建:
(1)系统初始化,系统初始化会创建许多进程,系统的调度进程创建init进程
(2)执行了正在运行的进程所调用的系统调用,如程序运行了一个fork()调用
(3)用户请求创建一个进程。如命令行中输入./a.out。
(4)一个批处理作业的初始化
进程的终止
进程是正在运行的程序的实例,一个程序是会运行完的,所以进程也有终止的时候:
(1)正常退出(自愿)如程序正常结束。
(2)出错退出(自愿)如编写一个程序,当错误时调用exit(num)。
(3)严重错误(非自愿)
(4)被其他进程杀死(非自愿&