进程的特征和定义
进程的定义
程序在并发执行下失去封闭性,其结果不可再见。所以程序是不可并发执行的。为了描述和控制并发执行的程序,引入进程的概念:
- 进程是程序的一次执行
- 进程是一个程序及其数据在处理机上顺序执行时所发生的活动。
- 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位
进程的特征
- 动态性:动态性是进程的最基本的特征。程序是一组有序指令的集合,是静态的。
- 并发性:多个进程同时存在于内存中,且能在同一时间段内执行。
- 独立性:进程是一个能独立运行、独立获得资源和独立接受调度的基本单位。程序只有建立了PCB,才能作为一个独立的单位参与运行。
- 异步性:进程按各自独立的、不可预知的速度向前推进。进程同步机制是为了保证并发执行的进程的结果仍有可再现性而建立的。
进程的五种基本状态
- 就绪态:进程已分配到除CPU之外的所有必要资源,一旦获得CPU就可立即执行。系统按一定的策略将所有处于就绪态的进程排成一个队列,称为就绪队列。
- 执行态:进程已获得CPU且正在执行。在任意时刻,单处理机系统栈只有一个进程处于执行态,多处理机系统有多个进程处于执行态。
- 阻塞态(等待态、封锁态):正在执行的进程由于某事件发生而阻塞。此时引起进程调度,操作系统将处理机分配给其他进程,该进程等待阻塞事件完成,处于暂停状态。根据阻塞原因的不同,设置多个阻塞队列。
- 创建态:创建是一个复杂的过程(申请空白PCB->向PCB中写入信息->分配资源->转入就绪态),正在被创建的进程处于创建态。创建工作未完成的原因可能是进程所需资源得不到满足(如内存不够)。
- 终止态:因到达了自然结束点,或出现了无法克服的错误,或其他原因,不能再执行的程序处于终止态。
进程管理中的数据结构
操作系统将计算机内包括硬件和信息在内的各类资源抽象成各种相应的数据结构和一组对资源进行操作的指令,便于用户利用数据结构和操作命令执行相关操作,无需关心具体细节。——操作系统为用户和应用程序提供一个简单的接口。
PCB的介绍
定义:PCB的全程是进程控制块,是操作系统核心为每个进程专门定义的数据结构。
作用:
- 系统通过PCB感知进程的存在,PCB是进程存在于系统中的唯一标志
- 实现间断性运行方式,保留阻塞进程的CPU现场信息以便再次调度执行该进程
- 提供进程管理所需信息。操作系统根据PCB实现对进程的控制和管理
- 提供进程调度所需信息
- 实现与其他进程的同步与通信
存储信息:
- 进程标识符(外部标识符和内部标识符PID,每个进程的PID唯一)
- 处理机状态
- 进程调度信息
- 进程控制信息
参考资料:
《计算机操作系统(第四版)》汤小丹
王道计算机考研 操作系统