进程
程序:一个指令序列
早期计算机只支持单道程序
引入多道程序技术
程序段:程序的代码存放的地方
数据段:程序运行处理结果的数据所存放的地方
PCB:系统为每个运行的程序配置一个数据结构,称为进程控制块。(目的:描述进程的各种信息)
进程实体:由程序段,数据段,PCB三者组成。又称进程映像。
PCB是进程存在的唯一标志
注:
进程是动态的,进程实体是静态的。
一、进程的组成
程序段,数据段,PCB
1、程序段
程序段:程序的代码
2、数据段
数据段:程序运行时使用,产生的运算数据。
3、PCB
PCB:操作系统用于管理进程
进程描述信息(UID,PID)
进程控制和管理信息(当前状态,优先级)
资源分配清单
处理及相关信息
二、进程的组织
1、链接方式
按照进程状态将PCB分为多个列
操作系统持有指向各个队列的指针
链接方式:
执行指针:指向当前处于运行态的进程
就绪队列指针:指向当前处于就绪态的进程
阻塞队列指针:指向当前处于阻塞态的进程
2、索引方式
根据进程状态不同,建立几张索引表
操作系统持有指向各个索引表的指针
索引方式:
执行指针:指向当前处于运行态的进程
就绪表指针:指向当前处于就绪态的进程
阻塞表指针:指向当前处于阻塞态的进程
进程的特征
动态性:最基本的特征
并发性
独立性:进程是资源分配,接收调度的基本单位
异步性:各进程以不可预知的速度向前推进,可能会导致运行结果的不确定性。
结构性
三、进程的状态与切换
1、三种基本状态
运行态(running):占有CPU并运行。
就绪态(ready):具备运行条件,但由于没有空闲CPU,而暂时不能运行。
阻塞态(waiting/blocked,又称等待态):因等待某一事件而暂时不能运行。
2、另外的两种状态
创建态(new):进程被创建,操作系统为进程分配资源,初始化PCB。
终止态(terminated):被撤销,操作系统回收拥有的资源,撤销PCB。
3、状态的转化
四、进程控制
进程控制:实现进程状态的转化
创建进程:初始化PCB,分配系统资源
创建态->就绪态:修改PCB内容和相应队列