一、进程和进程实体
程序段、数据段、PCB构成了进程实体(进程映像)。一般情况下,我们把进程实体就简称为进程,例如,所谓的创造进程,实质是是创造了进程实体的PCB;而撤销进程,实质上是撤销PCB。
系统为每个运行的程序配置一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息(如程序代码存放位置)。
不同的角度下进程可以有不同的定义,但都在强调进程的动态性。例如:进程是程序的一次执行过程。
在引入进程实体概念后,可把进程定义为:
进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。
严格来说,进程实体和进程不一样,进程实体是静态的,进程是动态的。不过除非特地区别,一般也认为进程实体就是进程。
二、进程的组成
进程的管理者(操作系统)所需的数据都在PCB中,程序本身运行所需要的数据在程序段和数据段中。
PCB是进程存在的唯一标志。
三、进程的组织方式
在一个系统中,通常有成千上万个PCB,为了能对他们加以有效的管理,应该用适当的方式把这些PCB组织起来。
进程的组成讨论是进程内部构成问题,而进程的组织讨论的是多个进程之间的组织方式问题。
进程的组织方式分为两种:链接和索引。
①链接方式:按进程状态将PCB分成多个队列,操作系统持有指向各个队列的指针。
②索引方式:根据进程状态的不同,建立几张索引表,操作系统持有指向各个索引表的指针。
四、进程的特征
①动态性:进程是程序的一次执行过程,是动态地产生、变化和消亡的。动态性是进程最基本的特征。
②并发性:内存中有多个进程实体,各进程可并发执行。
③独立性:进程是能独立运行、获得资源、接收调度的基本单位。
④异步性:各进程按各自独立的、不可预知的速度向前推进。
⑤结构性:每个进程都会配置一个PCB。结构上看,进程由程序段、数据段和PCB组成。