进程的引入
基本概念
1、程序的顺序执行特征:顺序性、封闭性、可再现性。
2、程序的并发执行特征:间断性、失去封闭性、不可再现性。
进程:
为使程序能并发执行,且为了对并发执行的程序加以描述和控制,引入了“进程”的概念。
进程控制块:PCB(Process Control Block):
进程描述信息:
1、 进程标识符(唯一的,用整数表示)
2、进程名(基于可执行文件名,用字符串表示,不唯一)
3、用户标识符
4、进程组关系
程序控制信息:
1、当前状态
2、优先级
3、代码执行入口
4、程序磁盘地址
5、运行统计信息(执行时间、页面调度)
6、进程间同步和通讯信息
7、进程的队列指针、进程的消息队列指针
所拥有的资源和使用情况:
1、虚拟地址空间状况
2、打开文件列表
CPU现场信息:
寄存器值(通用寄存器、PC、PSW、栈指针)
指向该进程页表的指针
操作系统-2进程管理
程序:静态的、存放在磁盘里的可执行文件、一系列指令的集合。
进程:动态的、程序的一次执行过程。(同一个程序多次执行会有多个进程)
PCB(process control block)进程控制块,保存相关的信息。
进程的组成
PCB是给操作系统用的。
程序段、数据段是给进程自己用的。
进程的状态与转换
进程正在被创建时,它的状态是“创建态”,在这个阶段操作系统会为进程分配资源、初始化PCB
当进程创建完成后,便进入“就绪态”,处于就绪态的进程已经具备运行条件,但由于没有空闲CPU,就暂时不能运行
如果一个进程此时在CPU上运行,那么这个进程处于“运行态”。
cPU会执行该进程对应的程序(执行指令序列)
在进程运行的过程中,可能会请求等待某个事件的发生(如等待某种系统资源的分配,或者等待其他进程的响应)。
在这个事件发生之前,进程无法继续往下执行,此时操作系统会让这个进程下CPU,并让它进入“阻塞态”
当CPU空闲时,又会选择另一个“就绪态”进程上CPU运行
丁字裤模型