【操作系统】第三章 处理器管理作者名:不祥 来源:网友提供 05年6月9日
本章考核知识点:1.多道程序设计 2.进程 3.进程状态 4.进程控制块 5.进程队列 6.可再入程序 7.中断及中断响应 8.中断优先级 9.进程调度 自学要求:通过本章学习应该掌握多道程序设计是如何提高计算机系统效率的;进程与程序有什么区别;进程的基本状态以及状态变化;进程队列及进程调度策略;中断的作用。 重点是:多道程序设计;进程的定义和属性;进程调度策略。 一、 多道程序设计( 领会 ) 1、什么是多道程序设计。 让多个计算问题同时装入一个计算机系统的主存储器并行执行,这种设计技术称“ 多道程序设计 ”,这种计算机系统称“多道程序设计系统” 或简称“多道系统”。 存储保护 :在多道程序设计的系统中,主存储器中同时存放了多个作业的程序。为避免相互干扰,必须提供必要的手段使得在主存储器中的各道程序只能访问自己的区域。这样,每道程序执行时,都不会破坏其他各道的程序和数据。特别是当某道程序发生错误的时,也不至于影响其它的程序。 程序浮动 :在多道程序设计系统中,对程序有一些特殊要求,也就是说,程序可以随机地从主存的一个区域移动到另一个区域,程序被移动后仍丝毫不影响它的执行,这种技术称为"程序浮动"。
2、 多道程序设计 利用了系统与外围设备的并行工作能力,从而提高工作效率。具体表现为:
从总体上说,采用多道程序设计技术后,可以有效地提高系统中资源的利用率,增加单位时间内的算题量,从而提高了吞吐率。 3、 多道程序设计 对算题量和算题时间的影响。 采用多道程序设计能改变系统资源的使用情况,提高系统效率。但是应注意以下两个问题:
二、 进程( 领会 ) 1、 进程 的定义:把一个程序在一个数据集上的一次执行称为一个"进程"。 2、 进程是由 程序 、 数据集 和 进程控制块 三部分组成。
3、 进程 与 程序 的区别及关系。程序是静止的,进程是动态的。进程包括程序和程序处理的对象(数据集),进程能得到程序处理的结果。进程和程序并非一一对应的,一个程序运行在不同的数据集上就构成了不同的进程。通常把进程分为“系统进程”和“用户进程”两大类,把完成操作系统功能的进程称为系统进程,而完成用户功能的进程则称为用户进程。 三、 进程状态( 领会 ) 1、 进程的 三种基本状态 。通常,根据进程执行过程中不同时刻的状态,可归纳为三种基本状态: · 等待态 :等待某个事件的完成; 2、进程的状态变化 进程在执行中状态会不断地改变,每个进程在任何时刻总是处于上述三种基本状态的某一种基本状态,进程状态之间转换关系如下图所示: 等待态→就绪态 则是等待的条件已满足,只需分配到处理器后就能运行。 运行态→就绪态 不是由于自身原因,而是由外界原因使运行状态的进程让出处理器,这时候就变成就绪态。例如时间片用完,或有更高优先级的进程来抢占处理器等。 就绪态→运行态 系统按某种策略选中就绪队列中的一个进程占用处理器,此时就变成了运行态。 进程 有 四个基本属性 : 四、进程控制块( 领会 ) 1、 进程控制块 的基本内容。 通常进程控制块包含四类信息: ·标志信息 含唯一的进程名 2、 进程控制块 的作用 进程控制块(Process Control Block,简称PCB),是操作系统为进程分配的用于标志进程,记录各进程执行情况的。进程控制块是进程存在的标志,它记录了进程从创建到消亡动态变化的状况,进程队列实际也是进程控制块的链接。操作系统利用进程控制块对进程进行控制和管理。 进程控制块的作用有:
五、进程队列( 领会 ) 1、 进程队列 的链接。 在多道程序设计的系统中往往会同时创建多个 进程 。在单处理器的情况下,每次只能让一个进程运行,其他的进程处于就绪状态或等待状态。为了便于管理,经常把处于相同状态的进程链接在一起,称"进程队列",由于 进程控制块 能标志进程的存在和动态刻画进程的特性,因此, 进程队列 可以用 进程控制块 的连接来形成。链接的方式有两种:单向链接和双向链接。 2、 进程基本队列 就绪队列 :由若干就绪进程按一定次序链接起来的队列。 3、进程的入队和出队。 出队和入队 :当发生的某个事件使一个进程的状态发生变化时,这个进程就要退出所在的某个队列而排入到另一个队列中去。 系统中负责进程入队和出队的工作称为队列管理。 无论单向链接还是双向链接,解决入,出队问题,都是首先找到该队列的队首指针,沿链找出要入队的进程以及它要插入的位置,或找出要出队的进程,然后修改本进程指针(入队情况)和相邻进程的有关指针值即可。 六、可再入程序( 识记 ) (1) 什么是 可再入程序 。 一个能被 多个用户同时调用 的程序称做" 可再入 "的程序。 (2) 可再入程序的性质。
编译程序 和 操作系统程序 通常都是"可再入"程序,能同时被不同用户调用而构成不同的进程。 七、中断及中断响应( 领会 ) 1、 中断 的定义。 一个进程占有处理器运行时,由于自身或者外界的原因(出现了事件)使运行被打断,让操作系统处理所出现的事件,到适当的时候再让被打断的进程继续运行,这个过程称为"中断"。 2、 中断 的类型。 从中断事件的性质出发,中断可以分为两大类: · 强迫性中断事件 包括硬件故障中断,程序性中断,外部中断和输入输出中断等 自愿中断 的断点是确定的,而 强迫性中断 的断点可能发生在任何位置。 3、中断的响应和处理。 中断响应 (硬件即中断装置操作) 处理器每执行一条指令后,硬件的中断位置立即检查有无中断事件发生,若有中断事件发生,则暂停现行进程的执行,而让操作系统的中断处理程序占用处理器,这一过程称为"中断响应"。 中断响应过程中,中断装置要做以下三项工作:
中断处理 ( 软件即操作系统操作 ) 操作系统的中断处理程序对中断事件进行处理时,大致要做三方面的工作:
1、 中断优先级 是硬件设计时确定的。中断装置按预定的顺序来响应同时出现的中断事件,这个预定的顺序称为"中断优先级"。中断优先级是按中断事件的重要性和紧迫程度来确定的 ,是由硬件设计时固定下来的。一般情况下,优先级的高低顺序依次为: 硬件故障中断 、 自愿中断 、 程序性中断 , 外部中断和输入输出中断 。 2、中断的嵌套处理 3、中断屏蔽的作用。中断优先级只是规定了中断装置响应同时出现的中断的次序,当中断装置响应了某个中断后中断处理程序在进行处理时,中断装置也可能去响应另一个中断事件。因此会出现优先级低的中断事件的处理打断优先级高的中断事件的处理,使得中断事件的处理顺序与响应顺序不一致,而且会形成多重嵌套处理,使多现场保护、程序返回等工作变的复杂。 中断屏蔽技术就是为了解决上述问题而提出的在一个中断处理没有结束之前不响应其他中断事件,或者只响应比当前级别高的中断事件。于是,当中断装置检查到有中断事件后,便去查看PSW中中断屏蔽标志,如果没有屏蔽就响应该中断;否则,暂时不响应该中断,待屏蔽标志消除后再响应。自愿中断是不能屏蔽的。 1、进程调度的职责。按选定的进程调度算法从就绪队列中选择一个进程,让它占用处理器。 2、选择进程调度算法的几个准则: ·提高处理器利用率 3、进程调度的常用算法: 先来先服务 、 优先数法 、 轮转法 、 分级调度 。
4、 进程的切换 进程调度将从就绪队列中另选一个进程占用处理器,使一个进程让出处理器,由另一个进程占用处理器的过程称"进程切换"。 若有一个进程从运行态变成等待态,或完成工作后就撤消,则必定会发生进程切换。若一个进程从运行态或等待态变成就绪态,则不一定发生进程切换。
|
|||
| |