OS:操作系统
PCB:进程控制块
引言:
在多道批处理环境下,程序的执行属于并发执行,因此会失去封闭性,并具有间断性和运行结构不可再现性。通常,程序是不可并发执行,否则,程序将失去意义--->数据错乱.为了使程序可以并发执行,对程序进行进一步的划分,在OS中引入“进程”概念。
进程的定义:
为了使参与并发的程序可以独立的运行,在OS中必须配置一个专门的数据结构--->PCB。对于进程,从不同的角度定义:
1、进程是程序的一次执行
2、进程是一个程序及其数据下处理机上顺序执行时发生的活动
3、进程是具有独立功能的程序在一个数据集上执行,它是系统进行资源分配和调度的独立单位。
进程的特征
1、动态性:进程是程序执行的过程。它的表现为:创建-->调度执行-->撤销消亡
2、并发性:多个进程共存于内存中。能在一段时间内同时执行
3、独立性:独立运行、独立获得资源、独立接受调度的基本单位。
4、异步性:进程按异步方式运行
基本状态和转换
进程的3中基本状态:
1、就绪状态:进程处于准备好的状态-->已分配到除CPU以外的其他必要资源
2、执行状态:获得CPU后程序正在执行的状态
3、阻塞状态:正在执行的进程受到某件事的影响无法继续执行的状态
三种基本状态的转换:
进程的创建
首先:申请空白PCB,并向PCB填入控制和管理进程的信息
其次:为进程分配必要的资源
最后:将进程的状态转变为就绪状态放入就绪队列中
进程的终止
首选:等待OS进行善后处理
其次:将进程的PCB清零,比将PCB空间返还OS
进程的挂起和状态转换
为了满足用户观察和分析进程的需要--->引入挂起
挂起操作的引入:终端用户的需要、父进程的需要、负载调节需要、OS的需要
引入挂起后的3个基本状态转换:
活动就绪 --> 静止就绪
活动阻塞 --> 静止阻塞
静止就绪 --> 活动就绪
静止阻塞 --> 活动阻塞
引入挂起后的5个基本状态转换:
NULL --> 创建
创建 --> 活动就绪
创建 --> 静止就绪
执行 --> 终止
进程管理的数据结构
PCB的作用
- 作为独立运行的基本单位标志
- 实现间断性运行方式
- 提供进程管理所需要的信息
- 提供进程调度所需要的信息
- 实现与其他进程的同步通信
PCB中的信息
- 进程标识符
- 处理机状态
- 进程调度信息
- 进程控制信息
PCB的组织方式
线性方式、链接方式、索引方式