一.定义
- 程序: 就是一个指定序列
- 进程实体:程序段、数据段和PCB
- PCB:系统为每个运行的程序配置一个数据结构,成为进程控制块(PCB),用来描述进程的各种信息(如程序代码存放的位置)
- 一般情况下,我们把进程实体简称为进程
- PCB是进程存在的唯一标志。所谓创建进程,就是创建进程实体的PCB,撤销进程其实就是撤销进程实体的PCB
- 进程是程序的一次执行过程。因此严格来说,进程实体和进程是不一样的,进程实体是静态的,而进程强调动态性
- 因此我们也可以把进程定义为进程实体的运行过程,是系统进行资源分配和调度的基本单位。
二.进程的组成
- 程序段:存放要执行的程序代码
- 数据段:存放运行过程中要处理的各种数据
- PCB:
1.进程描述信息:进程标识符(PID)和用户标识符(UID)
2.进程控制和管理信息:进程当前状态和进程优先级
3.进程分配到的资源清单:程序段指针,数据段指针,键盘,鼠标等
4.处理机相关信息:各种寄存器值。当进程切换时要把当前进程的运行情况保存下来记录再PCB中,如程序计数器表示程序执行到了哪一句。 - 也就是说进程管理者(操作系统)所需要的信息都保存在PCB中,而程序段和数据段保存的都是程序本身需要的数据。
三.进程的组织
多个进程的PCB之间的管理与组织
链接方式
- 按照进程状态(运行,就绪)将PCB分为多个队列
- 操作系统持有指向各个队列的指针
索引方式
- 按照进程状态将PCB分为多个索引表
- 操作系统持有指向各个索引表的指针
四.进程的特征
- 动态性:进程是程序的一次执行过程,是动态产生、变化、消亡的
- 并发性:多个进程并发执行
- 独立性:进程是能独立运行,独立获得资源、独立接受调度的基本单位
- 异步性:进程以不可预知的速度向前推进
- 结构性:程序块,数据块,PCB
五.小结
- 进程是动态的,严格来说进程实体和进程不一致
- PCB是进程存在的唯一标识
- 进程是系统进行资源分配和调度的基本单位