进程的定义、组成、组织方式
- 一、进程的定义
- 二、进程的组成
- 三、进程的组织
- 四、进程的特征
一、进程的定义
程序
:就是一个指令序列
-
早期的计算机(只支持单道程序)
-
引入多道程序技术之后:
- 为了方便操作系统管理,完成各程序并发执行,引入了
进程
、进程实体
的概念。
- 为了方便操作系统管理,完成各程序并发执行,引入了
PCB: 系统为每个运行的程序配置一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息(如代码存放位置)
🌳 PCB、程序段、数据段三部分构成了进程实体(进程映像)。一般情况下,我们把进程实体简称为进程,例如,所谓创建进程,实质上是创建进程实体中的PCB;而撤销进程,实质上是撤销进程实体中的PCB。PCB是进程存在的唯一标志!
从不同的角度,进程可以有不同的定义,比较传统典型的定义有:
1、进程是程序的一次执行过程
。
2、进程是一个程序及其数据在处理机上顺序执行时所发生的活动
。
3、进程是具有独立功能的程序在数据集合上运行的过程
,它是系统进行资源分配和调度的一个独立单位。
引入进程实体的概念后,可把进程定义为;
进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。
🎈 严格来说,进程实体和进程不一样,进程实体是静态的,进程则是动态的。不过,除非题目专门考察二者区别,否则可以认为进程实体就是进程。因此我们也可以说“进程由程序段、数据段、PCB三部分组成”。
二、进程的组成
进程(进程实体)由程序段
、数据段
、PCB
三部分组成。
-
数据段:程序运行时使用、产生的运算数据。如全局变量
-
程序段:程序代码即存放在此
-
PCB:操作系统通过PCB来管理进程,因此PCB中应该包含操作系统对其进行管理所需的各种信息。
三、进程的组织
进程的组成讨论的是一个进程内部由哪些部分构成的问题,而进程的组织讨论的是多个进程之间
的组织方式问题。
进程的组织方式:
- 链接方式
- 按照进程状态将PCB分为多个队列
- 操作系统持有指向各个队列的指针
- 索引方式
- 根据进程状态的不同,建立几张索引表
- 操作系统持有指向各个索引表的指针
四、进程的特征
- 动态性 (进程最基本的特征)
- 进程是程序的一次执行过程,是动态地产生、变化和消亡地
- 并发性
- 内存中有多个进程实体,各进程可并发执行
- 独立性 (进程是资源分配、接受调度的基本单位)
- 进程是能独立运行、独立获得资源、独立接受调度的基本单位
- 异步性 (会倒置并发程序执行结果的不确定性)
- 各进程按各自独立的、不可预知的速度向前推进,操作系统要提供“进程同步机制”来解决异步问题
- 结构性
- 每个进程都会配置一个PCB。结构上看,进程由程序段、数据段、PCB组成