计算机进程及其实现

上传人:ji****n 文档编号:54780915 上传时间:2018-09-19 格式:PPT 页数:26 大小:646.50KB
返回 下载 相关 举报
计算机进程及其实现_第1页
第1页 / 共26页
计算机进程及其实现_第2页
第2页 / 共26页
计算机进程及其实现_第3页
第3页 / 共26页
计算机进程及其实现_第4页
第4页 / 共26页
计算机进程及其实现_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《计算机进程及其实现》由会员分享,可在线阅读,更多相关《计算机进程及其实现(26页珍藏版)》请在金锄头文库上搜索。

1、2.3 进程及其实现,2.3.1 进程的定义和属性 2.3.2 进程的状态和转换 2.3.3 进程的描述和组成 2.3.4 进程切换与模式切换 2.3.5 进程的控制和管理,2.3.1 进程的定义和性质, 进程是可并发执行的程序在某个数据集合上的一次计算活动,也是操作系统进行资源分配和保护的基本单位。 进程是一个既能用来共享资源,又能描述程序并发执行过程的一个基本单位。,操作系统为什么要引入进程概念?,原因1-刻画系统的动态性,发挥系统的并发性,提高资源利用率。 原因2-它能解决系统的“共享性”,正确描述程序的执行状态。“可再用” 程序 “可再入” 程序“可再入”程序具有的性质,“可再入” 程

2、序举例,进程的属性,结构性:共享性;动态性;独立性;制约性;并发性。,2.3.2 进程的状态和转换 进程三态模型及其状态转换,进程五态模型及其转换,进程的挂起,进程为什么要有“挂起”状态?进程挂起的原因 ?,具有挂起功能的进程状态及其转换,挂起进程具有如下特征,该进程不能立即被执行。 挂起进程可能会等待事件,但所等待事件是独立于挂起条件的,事件结束并不能导致进程具备执行条件。 进程进入挂起状态是由于操作系统、父进程或进程本身阻止它的运行。 结束进程挂起状态的命令只能通过操作系统或父进程发出。,2.3.3 进程的描述和组成(1),1、进程映象进程控制块进程程序块进程核心栈进程数据块进程用户线程内

3、核线程,进程的描述和组成(2),操作系统中把进程物理实体和支持进程运行的环境合称为进程上下文。 当系统调度新进程占有处理器时,新老进程随之发生上下文切换。进程的运行被认为是在上下文中执行。,进程的描述和组成(2) 进程上下文组成,用户级上下文:系统级上下文:寄存器上下文:,2、进程控制块,进程控制块P C B ,是操作系统用于记录和刻划进程状态及有关信息的数据结构。也是操作系统掌握进程的唯一资料结构,它包括了进程执行时的情况,以及进程让出处理器后所处的状态、断点等信息。 进程控制块包含三类信息标识信息现场信息控制信息,3、进程队列及其管理(1),处于同一状态的所有PCB链接在一起的数据结构称为

4、进程队列。 同一状态进程的PCB既可按先来先到的原则排成队列,也可按优先数或其它原则排成队列。 通用队列组织方式:线性方式、链接方式、索引方式。,进程队列及其管理(2),PCB表,运行队列指针,就绪队列指针,等待队列1指针,等待队列2指针,空闲进程队列指针,链接方式,运行队列指针,就绪表指针,等待表1指针,索引方式,PCB表,PCB1,PCB2,PCB3,PCB4,PCB5,PCB6,PCBn,空闲表指针,P3 PnP5,等待索引表1,等待表2指针,队列管理和状态转换示意图,2.3.4 进程切换与CPU模式切换,进程切换是让处于运行态的进程中断运行,让出处理器,这时要做一次进程上下文切换。即保

5、存老进程状态而装入被保护了的新进程的状态,以便新进程运行。,进程切换的步骤,保存被中断进程的处理器现场信息; 修改被中断进程的进程控制块的有关信息,如进程状态等; 把被中断进程的进程控制块加入有关队列 选择下一个占有处理器运行的进程; 修改被选中进程的进程控制块的有关信息 根据被选中进程设置操作系统用到的地址转换和存储保护信息; 根据被选中进程恢复处理器现场。,调度和切换时机问题, 请求调度的事件发生后,就会运行低级调度程序,低级调度程序选中新的就绪进程后,就会进行上下文切换。实际上,由于种种原因,调度和切换并不一定能一气呵成。 通常的做法是,由内核置上请求调度标志,延迟到上述工作完成后再进行

6、调度和进程上下文切换。,处理器模式切换,当中断发生时,暂时中断正在执行的用户进程,把进程从用户状态切换到内核状态,去执行操作系统例行程序以获得服务,这就是一次模式切换。内核在被中断了的进程的上下文中对这个中断事件作处理,即使该中断可能不是此进程引起的。,模式切换的步骤,1)保存被中断进程的处理器现场信息; 2)处理器从用户态切换到核心态,以便执行服务程序或中断处理程序; 3)如果处理中断,可根据规定的中断级设置中断屏蔽位; 4)根据系统调用号或中断号,从系统调用表或中断入口表找到服务程序或中断处理程序地址。,CPU上执行的进程所处活动范围,用户空间中,处于进程上下文,用户进程在运行,使用用户栈

7、。 内核空间中,处于进程上下文,内核代表某进程在运行,使用核心栈。 内核空间中,处于中断上下文,与任何进程无关,中断服务程序正在处理特定中断,Intel x86未提供中断栈,借用核心栈。,UNIX/Linux中上下文切换和模式切换,2.3.5 进程的控制和管理(1),处理器管理的一个主要工作是对进程的控制,包括:创建进程、阻塞进程、唤醒进程、挂起进程、激活进程、终止进程和撤销进程等。这些控制和管理功能由操作系统中的原语实现。 原语是在管态下执行、完成系统特定功能的过程。 原语和机器指令类似,其特点是执行过程中不允许被中断,是一个不可分割的基本单位,原语的执行是顺序的而不可能是并发的。,进程的控制和管理(2),进程创建 进程撤销 进程阻塞 进程唤醒 进程挂起 进程激活,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号