操作系统笔记第二章(1进程描述)

第二章:进程的描述与控制

<一>、前趋图和进程执行
①前趋图:一个有向无循环图,用于描述进程之间执行的先后顺序(前趋图不能有循环)
有向无循环图(DAG) :
1)Pi结点:描述一个程序段、进程、或一条语句;
2)有向边“—>”:结点之间的偏序或前序关系;
3)Pi—>Pk,则Pi是Pk的直接前趋,Pk是Pi的直接后继。
在这里插入图片描述
②进程执行
1)顺序执行
在这里插入图片描述
顺序执行特征:
(1)顺序性:处理机的操作严格按程序规定顺序执行
(2)封闭性: 程序一旦开始执行,其计算结果不受外界因素影响。
(3)可再现性:程序执行只要初始条件一样,不论如何停顿,重复执行多少次结果都一样。
2)并发执行
在这里插入图片描述
由图可看出:输入程序 I1输入第一次数据后,计算程序C1对数据进行计算的同时输入程序I2可输入第二次数据,从而使第一次计算程序C1和I2可同时并发进行; 上图存在如下前驱关系 Ii—>Ci,Ii—>Ii+1,Ci—>Pi,Pi—>Pi+1,且Ii+1和Ci和Pi-1是重叠的,即Ii+1、Ci、Pi-1不存在前驱关系,可并发执行。
并发执行的特征:
(1)间断性:程序并发执行时,由于共享系统资源,以及为完成某项工作额而相互合作,致使并发执行的程序之间相互制约,导致程序具有“执行——暂停——执行”这种间断性的活动规律
(2)失去封闭性:并发程序执行时共享各种资源,程序执行的结果也受其他程序的影响
(3)不可再现性:由于失去了封闭性,程序运行结果受其他程序的影响,所以程序结果不确定
<二>、进程的描述
进程控制块(Process Control Block,PCB):使参与并发执行的每个程序可以独立运行
由程序段,相关的数据段和PCB三部分便构成了进程实体(进程映像)简称进程
所谓创建进程就是创建进程实体中的PCB,而撤销进程实质上是撤销进程的PCB
进程:
①定义:
1)进程是程序的一次执行;
2)进程是一个程序及其数据在处理机上顺序执行时所发生的活动;
3)进程是具有独立功能的程序在一个数据集合上运行的过程,他是操作系统运行资源分配的调度的一个独立单位。
进程的特征:
(1)动态性(进程最基本特征)进程实质上是进程实体的一次有生命期的执行过程,而程序只是静态的一组有序指令
(2)并发性:多个进程实体同存于内存中,在一段时间内同时运行。
(3)独立性:一个程序实体是一个可以独立运行、独立获得资源和独立接收调度的基本单位
(4)异步性:进程按各自独立的、不可预知的速度向前推进(为保证程序运行结果是可再现的,可配置相应的同步机制)
进程的基本状态:
(1)就绪状态:进程已获得除CPU外的所有必要资源,只要获得CPU便可立马执行)(可形成就绪队列)
(2)执行状态:进程已获得CPU,程序处于正在执行的状态(单处理机只有一个进程处于执行状态,多处理机可有多个进程处于执行状态)
(3)阻塞状态:正在执行的程序由于发生某种事件(I/O请求、申请缓冲区失败等)暂时无法执行(可形成阻塞队列)
在这里插入图片描述
为增强PCB对数据及操作完整性要求和增强管理灵活性引入创建状态和中指状态
(1)创建状态:创建进程
(2)终止状态:等待操作系统进行善后处理,最后将PCB空间返还系统
在这里插入图片描述
挂起操作:作用于某程序时,进程处于静止状态,如果程序正在执行,它将暂停执行,若程序处于就绪状态,该程序暂不接受调度,与挂起操作对应的是激活操作。
挂起引入原因:
(1)终端用户的需要
(2)父程序请求
(3)负荷调节的需要
(4)操作系统的需要
引入挂起原语和激活原语操作后的三个进程状态的转换
(1)活动就绪—>静止就绪
(2)活动阻塞—>静止 阻塞
(3)静止就绪—>活动就绪
(4)静止阻塞—>活动阻塞
在这里插入图片描述
引入挂起操作后五个进程状态的转换
(1)NULL—>创建
(2)创建—>活动就绪
(3)创建—>静止就绪
(4)执行—>终止
在这里插入图片描述
OS中用于管理控制的数据结构一般分为四类:内存表、设备表、文件表、用于进程管理的进程表(PCB)
PCB:(进程存在的唯一标志)
(1)作用:(记录操作系统所需的,用于描述进程当前情况以及管理进程运行的全部信息,是操作系统中最重要的记录型数据结构)
1)作为独立运行基本单位的标准
2)能实现间断性运行方式
3)提供进程管理所需的信息
4)提供进程调度所需的信息
5)实现与其他进程的同步和通信
(2)PCB中的信息
在这里插入图片描述
1)进程标识符(唯一的标识一个进程)
①外部标识符:方便用户使用,用户进程访问某进程时使用
②内部标识符:唯一的数字序号,方便系统使用
2)处理机状态:主要由处理机的各种寄存器中的内容组成,被中断时这些信息要存放到PCB。
①通用寄存器:用户程序访问的,暂存信息
②指令计数器:下一条指令地址
③程序状态字PSW:一些状态信息
④用户栈指针:每个用户进程都有的存放过程和系统调用参数及调用地址的一组系统栈
3)进程调度信息
①进程状态
②进程优先级
③进程调度所需的其他信息:调度算法相关信息
④事件:状态转换有关的事件
4)进程控制信息
①程序和数据的地址(单个进程):数据所在的内外存地址
②进程同步和通信机制(多进程间):同步和通信机制的信号量、消息队列指针等
③资源清单
④链接指针(PCB的组织):本PCB所在队列的下一个进程PCB首地址。

PCB信息的存放:
系统运行中有若干个程序的PCB,它们常驻内存的PCB区;采用的数据结构:PCB结构体,PCB链表或队列
(3)PCB的组织方式
1)线性方式:PCB都组织在一张线性表中
2)链接方式
在这里插入图片描述
3)索引方式在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值