第二章 处理器管理

一、多道程序设计

1.程序的并行执行

     程序的并行执行,发挥了处理器与外围设备并行工作的能力,使处理器的效率有所提高

2.什么是多道程序设计

    让多个计算机问题同时进入一个计算机系统的主存储器并行执行,所以被称为“多道程序设计”,简称"多道程序“

3.多道程序设计为什么能提高处理的工作效率

多道程序设计利用了系统与外围设备的并行工作能力从而提高工作效率。具体表现为:提高了处理的利用率;系统资源被充分利用;发挥了处理器与外围设备以及外围设备之间的并行工作能力

4.多道程序设计对算题量和算题时间的影响

 由于处理器与外围设备可以并行工作,各外围设备也可以并行工作,多道程序设计正式利用了这种并行工作的能力,使得各种设备同时工作,从而增加了单位时间内的算题量。

从总体上来说,采用多道程序设计可增加单位时间的算题量,但对每一个算题来说,从算题开始到全部完成所需要的时间比单道执行所需的时间可能要延长

二、进程

1.进程的定义

把一个程序在一个数据集上的一次执行称为一个“进程”

2.为什么要引入进程

(1) 提高资源的利用率。通过进程的同步可使这些进程正确合作,从而处理器与外围设备以及各种外围设备之间有效地并行工作,提高资源的利用率。

(2)正确描述程序的执行情况

3进程与程序的区别及联系

程序是静止的,进程是动态的。进程包括程序和程序处理的对象,进程能得到程序处理的对象。进程能得到程序处理的结果。进程和程序并非一一对应的,一个程序运行在不同的数据集上就构成了不同的进程。多个进程可以并发执行。

进程的基本状态及状态变化

我们按进程在执行过程中不同时刻的不同状态定义3中基本状态。

(1) 等待态:等待某个事件的完成

(2)就绪态:等待系统非陪处理器以使运行/

(3)运行态:占有处理器正在运行。

进程在执行中状态不断发生变化,下面列举进程变化的情况:

(1) 运行态到等待态。一个进程运行中启动了外围设备,等待外围设备传输:进程在运行中申请资源得不到满足变成等待资源状态:进程在运行出现了故障变成等待干预状态。

(2)等待态到就绪态。外围设备工作结束,使等待外围设备传输者结束等待:等待的资源得到满足:故障排除后等待干预的进程结束等待。

(3)运行态到就绪态。分配给进程占用处理器的时间用完而强迫让出处理器;有更高优先权的进程要运行,迫使正在运行的进程让出处理器

(4)就绪态到运行态。有多个进程等待分配处理器时,系统按一种规定的策略从多个处于就绪状态的进程中选取一个进程,让它占有处理器,被选中进程的转台就变成运行态。

三、进程控制块

1、进程控制块的作用和基本内容。

   进程控制块的作用:能区别哥哥不同的进程,记录各个进程执行时的情况。

进程控制块的基本内容。通常进程控制块包含四类信息:

(1)标志信息:用于标识一个进程

(2)说明信息:用于说明进程情况

(3)现场信息:用于保留进程存放在处理器中的各种信息

(4)管理信息:用于进程调度。

进程的组成部分:

进程是由程序,数据集和进程控制块3部分组成的

3.进程的穿件与撤销

一个被创建的进程是由他的进程控制块中的进程名标识的。进程刚被创建时,他的初始状态为“就绪态”,当它占用处理器时变成“运行态”,在运行过程中随执行情况或其他原因的影响状态可不断发生变化。进程执行时把不断变化的情况记录在进程控制块中,操作系统一句进程控制块对进程进行控制和管理。

一个进程在执行过程中,为了请求某种服务,可以再要求创建其他的进程。每创建一个进程都要有一个进程控制块来标识,一个进程完成了自己的任务后,则要收回这个进程占有的工作区和撤销该进程的进程控制块,于是一个进程就结束他的生命而消亡。因此,每一个进程都有一个从创建到消亡的生命周期

四、进程队列

1.进程队列可用进程控制块来链接

由于每个进程都有一个进程控制块,进程控制块能标识一个济南城的存在和动态济南城的特性。为了便于控制和管理,进程的队列可以通过对进程控制块的链接来形成。

2、进程的基本队列。

就绪队列:由若干就绪进程按一定次序连接起来的队列

等待队列:等待资源或等待某些事件的进程排列的队列

3.进程的入队和出队

一个进程在执行过程中,由于进程的状态不断变化而要从一个队列退出,进入另一队列,直至进程结束。一个进程从所在的队列退出称为“出队”。相反,一个进程到一个指定的队列中称为“入队”

五、中断

1.中断的定义和类型

由于某些事件的出现,中止现行进程的运行,而转去处理出现的时间,待适当的时候让被中止的进程继续运行,这个过程称为“中断”

不同硬件结构的计算机,他们的中断源不尽相同。但是从中断事件的性质来说,一般可以分成下述几类:

(1)硬件故障中断。它是由于机器故障早恒,例如,电源故障,主存出错等

(2) 程序中断。这是由于程序执行到某条机器指令时可能出现的各种问题而引起的中断,例如,发现定点操作数溢出,除数为“0”,地址越界,使用非法指令码,目态下的用户使用了特权指令等

(3)外部中断。这是由各种外部事件引起的中断。例如,按了控制板上的一个中断键,设置的定时时钟的时间周期到

(4)输入/输出中断。输入输出控制系统发现外围设备完成了输入输出操作或在执行输入输出操作时通道或外围设备产生错误而一起的中断

(5)访管中断。它是正在运行的进程为了请求调用操作系统的某个功能而执行一条“访管指令”,所引起的中断。例如,用户要求分配一台外围设备,要求分配一些主存区域,要求启动外围设备读一批数据等

2中断的响应

处理器每执行一条指令后,硬件的中断位置立即检查有无中断事件发生,若有中断事件发生,则暂停现行进程的执行,而让操作系统的中断处理程序占用处理器,这一过程称为“终端响应”

六、中断的处理

中断处理程序对中断事件的处理可分两步进行。第一步是保护好被中断进程的现场信息,即把被中断进程的进程控制块中。其目的是保证被中断者再次运行时能继承被中断时的情况继续运行。第二步是根据旧PSW指示的中断事件进行具体处理。对各类中断事件必须进行不同的处理,对同一类中不同事件的处理也是不同的。中断处理程序肥西引起中断的原因后,在有些情况下可转交适当的例行程序来处理该中断。

七、进程调度

1.常用的进程调度算法的种类

(1)先来先服务调度算法:该算法按进程入就绪队列的先后次序选择可以占用处理器的进程。

(2)最高优先级调度算法:对每一个进程给出一个优先级,进程调度总是让当时具有最高优先级的进程先使用处理器。对一个高优先级的进程占用处理器后又可分两种方式来对待它。第一种方式是非抢占式的,即一旦某个高优先级的进程占有了处理器,就可一直运行下去,不管此时是否有更高优先级的进程就绪,只要它的工作没有结束或没有出现等待事件,那么它总是能占有处理器运行。第二种方法是可抢占式的,在这种方式下,严格保证任何时刻总是让具有最高优先级的进程在处理器上运行。这种抢占式的优先级调度算法在实时系统中很有用。对具有相同优先数的进程,再采用先来先服务的次序分配处理器

(3)时间片轮转调度法:“时间片”是指允许进程一次占用处理器的最长时间。时间片轮转调度算法把就绪进程按就绪的先后次序排队队列,调度时总是选择就绪状态中的第一个进程,让它占用处理器,但规定它占用处理器的时间不能超过预定的时间片。如果允许的时间片用完而进程尚未运行结束,它必须把处理器让给下一个就绪的进程使用,如此反复循环。

转载于:https://my.oschina.net/xiaolaoshu/blog/861709

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值