Please enable JavaScript.
Coggle requires JavaScript to display documents.
第二章进程的描述与控制 - Coggle Diagram
第二章进程的描述与控制
三、进程控制
前置概念
进程控制
用来管理从进程诞生、运行、到结束过程中的一切事情,故而要由操作系统内核中的原语来实现。
原语
在执行过程中不允许被中断
内核的实现是通过原语实现的,而原语又是由原子操作构成的
原子操作在管态(核态,相对用户态)下执行,常驻内存
1、操作系统内核
操作系统中与硬件紧密相关的模块((如中断处理程序、设备驱动程序等)以及运行频率较高(如时钟管理、进程调度等)的模块,它们常驻内存。
设置操作系统内核的作用
(⑵)提高操作系统的运行效率
(1)便于对软件进行保护,防止被其它程序破坏;
操作系统内核两大功能
2资源管理功能o
1.支撑功能o
处理机执行状态
(2)用户态((目态)。
(1)系统态(管态或内核态);
2、进程的创建
引起事件
进程图
进程的层次结构
windows中不存在进程层次结构的概念,进程之间(通过句柄))只有控制与被控制的关系。
体现为进程创建过程中生成的进程家族树,如unix下的进程树。
创建原语
(1)申请空白PCB。
(2)为新进程分配资源。
(4)将新进程插入就绪队列,如果进程就绪队列能够接纳新进程,便将新进程插入就绪队列。
(3)初始化进程控制块。
3、进程的终止
终止原语
根据进程标识符,找到相应的PCB
如果正处于进行状态,则停止进程的执行
如果有子进程,终止子进程归还资源到父进程或者系统
撤销PCB
引起事件四
4、进程的阻塞与唤醒
唤醒原语
将该PCB插入到就绪队列中
从阻塞队列中取出被唤醒进程
改PCB中现行状态为就绪
转进程调度或返回
阻塞原语
停止执行进程,改状态为阻塞
转进程调度程序
保存进程的现场到PCB结构
将该进程PCB插入阻塞队列
引起事件四
5、进程的挂起与激活
挂起引起事件
挂起原语
根据被挂起进程的标识符,找到PCB
取PCB的状态
运行状态四
活动就绪状态四
活动阻塞状态四
激活原语
有需要转进程调度
将进程状态由挂起改为激活后的状态
系统将外存上被挂起的进程换入内存
四、进程同步四
进程同步的基本概念
临界区P
(1)空闲让进临界资源空闲状态,应允许请求进入临界区
(2)忙则等待-临界资源正被访问,进入临界区进程必须等待
(3)有限等待-有限时间内能进入自己的临界区
(4)让权等待-不能进入临界区时,应立即释放处理机
临界资源与互斥
互斥
临界资源
同步机制应遵循的规则
进程制约关系
直接相互制约关系
间接相互制约关系
信号量的应用
实现前趋关系四
实现互斥四
signal(mutex)
wait(mutex)
临界区
信号量机制四
整型信号量
Wait(S)
缺点四
signal(S)
记录型信号量
记录型数据结构包含value值和链表L
signal和wait原语操作
增加一个进程链表指针L链接所有等待进程
增加记录资源数目的整型变量value值
信号量集P
特殊情况
加判断条件后全分配或全不分配
和AND型信号量集一样
AND型信号量集
全部分配或全不分配
硬件同步机制
1.关中断o
2.利用test-and-set指令实现互斥(测试并建立)
3.利用swap指令实现互斥
管程机制四
管程的定义o
条件变量
说明
condition x
同步原语
x.signal
x.wait p
作用
一、前趋图和程序执行
前趋图四
程序的顺序执行及其特征P
程序的并发执行及其特征
进程的特征与状态
二、进程的描述
1、进程的定义和特征
进程的定义
进程o
进程控制块PCB o
进程实体o
进程的特征
动态性:由创建而产生,由调度而执行,由撤销而消亡。
并发性:多个进程实体同存于内存之中,且能在一段时间内同时执行。
独立性:独立执行、独立获得资源、独立接受调度的基本单位。。
异步性:按各自独立的、不可预知的速度向前推进
2、进程的基本状态及转换
基本状态
执行
阻塞
就绪
进程的挂起
静止阻塞
静止就绪
考虑全局
终止状态
创建状态
3、挂起操作和进程状态的转换o
4、进程管理中的数据结构
1.操作系统中用于管理控制的数据结构
2进程控制块PCB的作用
OS是根据PCB来对并发执行的进程进行控制和管理的
(1)作为独立运行基本单位的标志。
(2)能实现间断性运行方式。
(3)提供进程管理所需要的信息。
(4)提供进程调度需要的信息。
(5)实现与其它进程的同步与通信
3.进程控制块中的信息
处理机状态信息四
通用寄存器
指令计数器
程序状态字PSW
用户栈指针
进程标识信息四
外部标识符
内部标识符
进程调度信息四
进程调度所需的其它信息
进程优先级
事件
进程状态
进程控制信息四
资源清单
链接指针
进程同步和通信机制
程序和数据的地址
4.进程控制块的组织方式四
线性方式
索引方式
链接方式
进程通信
经典进程的同步问题。
线程。