操作系统进程的定义

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

就绪 时间片完 I/O完成 进程调度
阻塞
I/O请求
执行
结束
第二章 进 程 管 理
进程状态的转换
• • • • • • • • 新→就绪 就绪 就绪→执行 就绪 执行 执行→就绪 执行 就绪 执行→阻塞 执行 阻塞 阻塞→就绪 阻塞 就绪 执行→终止 执行 终止 就绪→阻塞 就绪 阻塞 阻塞→执行 阻塞 执行
第二章 进 程 管 理
2. 进程控制块中的信息(续4) 进程控制块中的信息( )
4) 进程控制信息
① 程序和数据的地址
是指进程的程序和数据所在的内存或外存地(首 址 是指进程的程序和数据所在的内存或外存地 首 )址, 以便再调度到该进 程执行时,能从PCB中找到其程序和数据; 中找到其程序和数据; 程执行时,能从 中找到其程序和数据
第二章 进 程 管 理
PCB链接队列示意图 链接队列示意图
1) 链接方式
执行指针 PCB1 PCB2 PCB3 PCB4 PCB5 PCB6 PCB7 PCB8 PCB9 … 4 3 0 8 7 9 0 1
就绪队列指针
阻塞队列指针
空闲队列指针
第二章 进 程 管 理
按索引方式组织PCB 按索引方式组织
• 进程可以并发执行,程序不能 进程可以并发执行, • 进程是竞争计算机系统资源、进行调度的 进程是竞争计算机系统资源、 基本单位 • 进程与程序有联系
进程既然是动态的, 进程既然是动态的,因此它有若干状态
第二章 进 程 管 理
4.进程的三种基本状态 .
1) 就绪状态 (Ready)
万事俱备,只欠 就绪队列; 万事俱备,只欠CPU; 就绪队列;等待调度程序进行调度
第二章 进 程 管 理
6.挂起状态 .
• 挂起状态的产生 进程不断被创建,内存资源越来越有限,此 时有重要的进程必须被创建,而内存已没有 足够的空间,可考虑把一部分进程送离内存。 这部分就叫挂起。 • 进程状态的转换 引入挂起状态后,将又增加从挂起状态到非 挂起状态的装换;
第二章 进 程 管 理
第二章 进 程 管 理
3. 进程控制块的组织方式
1) 链接方式 通过进程控制块中的指针, 通过进程控制块中的指针,将进程控制块排成 几个队列:就绪队列,阻塞队列, 几个队列:就绪队列,阻塞队列,空闲队列 2) 索引方式 系统建立几张索引表:就绪进程索引表, 系统建立几张索引表:就绪进程索引表,阻塞进 程索引表, 程索引表,空闲进程控制块索引表 保留各索引表的首地址。 保留各索引表的首地址。
第二章 进 程 管 理
第二章 进程管理
2.1 2.2 2.3 2.4 2.5 进程的基本概念 进程控制 进程同步 经典进程的同步问题 进程通信
第二章 进 程 管 理
2.1 进程的基本概念
什么是进程?? 什么是进程??
第二章 进 程 管 理
小结
• 程序并发执行时的这些特征,这说明通 常的程序是不能参与并发执行的,因为 程序执行的结果是不可再现的;这样程 序的运行就失去了意义,为了使程序能 并发执行,引入了“进程”的概念。 • 程序是存在磁盘的文件时静态的。
2) 执行 运行状态(Running) 执行/运行状态 运行状态
占有CPU,正在运行(单CPU 系统,任何时刻只有一个进 ,正在运行( 系统, 占有 程在运行) 程在运行)
3) 阻塞状态 (Blocked)
运行进程发生某事件(请求 )而暂停执行,自愿放弃 运行进程发生某事件(请求I/O)而暂停执行,自愿放弃 CPU 进入阻塞状态;当I/0完成,进入就需状态。 进入阻塞状态; 完成, 完成 进入就需状态。
第二章 进 程 管 理
2. 进程控制块中的信息(1) 进程控制块中的信息( )
1) 进程标识符
进程标识符用于惟一地标识一个进程。 进程标识符用于惟一地标识一个进程。一个进程通常有两种标识 符: (1) 内部标识符 在所有的操作系统中,都为每一个进程赋予一个惟一的数字标识符, 在所有的操作系统中,都为每一个进程赋予一个惟一的数字标识符, 它通常是一个进程的序号。 它通常是一个进程的序号。 设置内部标识符主要是为了方便系统 使用。 使用。 (2) 外部标识符 它由创建者提供,通常是由字母、数字组成,往往是由用户(进程 进程) 它由创建者提供,通常是由字母、数字组成,往往是由用户 进程 在访问该进程时使用。为了描述进程的家族关系, 在访问该进程时使用。为了描述进程的家族关系, 还应设置父进 程标识及子进程标识。此外,还可设置用户标识, 程标识及子进程标识。此外,还可设置用户标识,以指示拥有该进 程的用户。 程的用户。
进程的三种基本状态及其转换图
就绪 时间片完 I/O完成 进程调度
阻塞
ILeabharlann BaiduO请求
执行
第二章 进 程 管 理
5. 新状态和终止状态
• 新状态(New) 新状态( )
建立 就绪队列
新状态
• 终止状态(Terminated) 终止状态( )
进程结束 终止状态 撤销
第二章 进 程 管 理
进程状态变迁图
新进程
第二章 进 程 管 理
• 当进程执行过程中,CPU被强行掠夺, 那么进程进入什么状态呢?? • 强行掠夺:在分时系统中,采用的是时 间片机制,当进程时间片完了,那么 CPU将被掠夺,或者由于更高级别的进 程进来获得了CPU,当前的进程也被剥 夺CPU?此时进程进入什么状态呢??
第二章 进 程 管 理
(1). 定义
• 进程控制块(PCB:Process Control Block)是进程实体的一部分, 进程控制块( )是进程实体的一部分, 是操作系统中最重要的记录型数据结构,其中记录了OS所需的 所需的、 是操作系统中最重要的记录型数据结构 , 其中记录了 所需的 、 用于描述进程情况及控制进程运行的全部信息。 用于描述进程情况及控制进程运行的全部信息。
第二章 进 程 管 理
2. 进程控制块中的信息(续3) 进程控制块中的信息( )
3) 进程调度信息 进程调度信息
中还存放一些与进程调度和进程对换有关的信息, 在PCB中还存放一些与进程调度和进程对换有关的信息,包括: 中还存放一些与进程调度和进程对换有关的信息 包括: ① 进程状态 指明进程的当前状态, 作为进程调度和对换时的依据; 指明进程的当前状态, 作为进程调度和对换时的依据;处于阻塞 的不能被调度, 的不能被调度,只有就绪的才能被调度 ② 进程优先级 用于描述进程使用处理机的优先级别的一个整数, 用于描述进程使用处理机的优先级别的一个整数, 优先级高的进 程应优先获得处理机; 程应优先获得处理机; ③ 进程调度所需的其它信息 它们与所采用的进程调度算法有关,比如, 它们与所采用的进程调度算法有关,比如,采用先来先调度的算 法,那必须知道进程创建的时间先后顺序 ④ 事件 是指进程由执行状态转变为阻塞状态所等待发生的事件, 是指进程由执行状态转变为阻塞状态所等待发生的事件,即阻塞 原因。 原因。
第二章 进 程 管 理
1. 进程控制块(PCB)的作用 进程控制块( ) 作用(对正在运行的程序的描述 作用 对正在运行的程序的描述) 对正在运行的程序的描述
• 1、是进程存在的唯一标识。 、是进程存在的唯一标识。 • 2、 操作系统是通过进程控制块来对进程 、 进行控制和管理的。 进行控制和管理的。 • PCB是OS 感知进程存在的唯一标志。 是 感知进程存在的唯一标志。 • 创建进程:建立PCB 创建进程:建立 • 撤销进程:收回PCB 撤销进程:收回
第二章 进 程 管 理
2. 进程控制块中的信息(续2) 进程控制块中的信息( )
2) 处理机状态 处理机状态
处理机状态信息主要是由处理机的各种寄存器中的内容组成的。 处理机状态信息主要是由处理机的各种寄存器中的内容组成的。 ① 通用寄存器 又称为用户可视寄存器,它们是用户程序可以访问的, 又称为用户可视寄存器,它们是用户程序可以访问的,用于暂存信 息; ② 指令计数器 其中存放了要访问的下一条指令的地址; 其中存放了要访问的下一条指令的地址; 程序状态字PSW ③ 程序状态字 其中含有状态信息,如条件码、执行方式、 中断屏蔽标志等; 其中含有状态信息,如条件码、执行方式、 中断屏蔽标志等; ④ 用户栈指针 每个用户进程都有一个或若干个与之相关的系统栈, 每个用户进程都有一个或若干个与之相关的系统栈,用于存放过程 和系统调用参数及调用地址。栈指针指向该栈的栈顶。 和系统调用参数及调用地址。栈指针指向该栈的栈顶。
第二章 进 程 管 理
执行
激活 活动 就绪 激活 活动 阻塞 挂起 静止 阻塞 挂起 静止 就绪
具有挂起状态的进程状态图
第二章 进 程 管 理
2.1.6 进程控制块 进程控制块PCB
1. 进程控制块的作用 2. 进程控制块中的信息 3. 进程控制块的组织方式
第二章 进 程 管 理
1. 进程控制块的作用
② 进程同步和通信机制
指实现进程同步和进程通信时必需的机制, 两个进程通信的方式 指实现进程同步和进程通信时必需的机制,
③ 资源清单
是一张列出了除CPU以外的、进程所需的全部资源及已经分配到该进程 以外的、 是一张列出了除 以外的 的资源的清单; 的资源的清单;
④ 链接指针
它给出了本进程(PCB)所在队列中的下一个进程的 它给出了本进程 所在队列中的下一个进程的PCB的首地址。 的首地址。 所在队列中的下一个进程的 的首地址 指向同种状态的下一个进程。 指向同种状态的下一个进程。
6.挂起状态 .
进程状态的转换
– 活动就绪 静止 活动就绪→静止就绪 就绪 静止就绪 从处于未被挂起的就绪状态称为“活动就绪”,当被挂起后,该进程就装变
为“静止就绪”

活动阻塞 静止阻塞 活动阻塞→静止 阻塞 静止阻塞 从处于未被挂起的阻塞状态称为“活动就绪”,当被挂起后,该进程就
装变为“静止阻塞”
1) 2) 3)
并发性

独立性
独立运行, 独立运行,独立获得资源的基本单位
异步性 进程在计算机系统中推进的速度不可预知 5)动态性 (最基本特征,具有生命周期 最基本特征, )
创建 调度 暂停 撤销
第二章 进 程 管 理
3 . 进程与程序的区别与联系
• 动态与静态
本质区别,进程是动态的, 本质区别,进程是动态的,程序是静态的
(2). 作用
• 使一个在多道程序环境下不能独立运行的程序 含数据),成为一个 使一个在多道程序环境下不能独立运行的程序(含数据 , 含数据 能独立运行的基本单位,一个能与其它进程并发执行的进程。 能独立运行的基本单位,一个能与其它进程并发执行的进程。 • OS是根据 是根据PCB来对并发执行的进程进行控制和管理的。 来对并发执行的进程进行控制和管理的。 是根据 来对并发执行的进程进行控制和管理的 • PCB是OS 感知进程存在的唯一标志。 是 感知进程存在的唯一标志。 • 创建进程:建立PCB 创建进程:建立 • 撤销进程:收回PCB 撤销进程:收回
– –
静止就绪 活动 静止就绪→活动就绪 就绪 活动就绪
被激活
静止阻塞 活动 静止阻塞→活动阻塞 阻塞 活动阻塞
被激活
第二章 进 程 管 理
6.挂起状态 .

– –
引入挂起状态的原因
终端用户的请求 用户编程过程中,调用了挂起代码 父进程请求 父进程请求 A进程中创建B进程,则A与B是父子关系,对B 的控制和管理由A负责; – – 负荷调节的需要 操作系统的需要 操作系统修改进程时,可能将进程挂起
执行指针 就绪索引表 就绪表指针 阻塞索引表 阻塞表指针 PCB1 PCB2 PCB3 PCB4 PCB5 PCB6 PCB7
第二章 进 程 管 理
2.2 进 程 控 制
• 主要任务:创建和撤销进程,并实现进 主要任务:创建和撤销进程, 程的状态转换, 程的状态转换,一般由操作系统内核实 现。 2.2.1 进程的创建 2.2.2 进程的终止 2.2.3 进程的阻塞与唤醒 2.2.4 进程的挂起与激活
第二章 进 程 管 理
1.进程的定义
静止的程序无法描述正在运行程序的活动规律, 静止的程序无法描述正在运行程序的活动规律,以及系统内 无法描述正在运行程序的活动规律 的动态情况。 的动态情况。
第二章 进 程 管 理
2.进程的特征
• 结构特征
进程是为描述了正在运行的程序的若干指标。 进程是为描述了正在运行的程序的若干指标。从实现的角度是 称为PCB(进程控制块 进程控制块) 一个结构体数据结构 称为 进程控制块
相关文档
最新文档