当前位置:
文档之家› 第二章操作系统运行环境[1]
第二章操作系统运行环境[1]
统运行环境[1]
处理机状态:
1)核态:CPU执行操作系统程序时所处的状态。 在此状态下允许CPU使用全部资源和全部指令,其中 包括一组特权指令(如涉及外设的I/O、改变处理机状 态、修改存储保护的指令),实现对系统资源的分配 与管理,为用户提供使用外部设备的服务。
之一。
第二章操作系统运行环境[1]
中断的分类
1。按照中断事件的性质,可以分成
(1)强迫性中断事件 (2)自愿性中断事件。
第二章操作系统运行环境[1]
强迫性中断事件
强迫性中断事件不是正在运行的程序所期待的, 而是由于某种事故或外部请求信息所引起的。
这类中断事件大致有以下几种:
机器故障中断事件。例如,电源故障,主存储器出 错等。
硬件中断
软件中断 正常的线程执行
第二章操作系统运行环境[1]
中断的屏蔽
主机可以允许或禁止某类中断的响应 主机是否允许某类中断,由当前程序状
态字PSW中的某些中断屏蔽位来决定。
第二章操作系统运行环境[1]
中断的处理过程
判断是否响应中断 关中断
保存中断现场 (PSW、PC等)
分析中断原因 转中断处理程序
第二章操作系统运行环境[1]
两类中断事件的响应过程
机器故障中断/ 程序性中断事件/
I/O中断事件/ 外部事件
运行程序
中断装置
中断处理 程序
a。强迫性中断事件
运行程序 访管指令
中断装置
中断处理 程序
b。自愿性中断事件
第二章操作系统运行环境[1]
中断的分类
2.按照中断信号的来源,把中断分为外中断和 内中断 .
非特权指令。
操作系统----执行所有指令 用户----执行非特权指令
第二章操作系统运行环境[1]
2.1处理机----处理机工作状态
根据对系统资源和机器指令的使用权限, 把处理机执行时的工作状态分为
核心态 用户态
有的操作系统还将系统程序执行时的机 器的状态又分为核态和管态。处理机状 态的权限次序是:
1、通用寄存器:可由程序设计者指定许多功能,如存放操作数 或用作寻址寄存器。
2、数据寄存器:用以存放操作数。它们作为内存数据的高速缓 存,可以被系统程序和用户程序直接使用并进行计算。
3、地址寄存器:用于指明内存地址。如索引寄存器、段寄存器 (基址/限长)、堆栈指针寄存器等等。
4、 I/O 地址寄存器(I/O AR):用于指定I/O 设备。 5、 I/O 缓冲寄存器(I/O BR):用于处理机和I/O 设备交换数据。 6、控制寄存器:用于存放处理机的控制和状态信息。
它至少应该包括程序计数器(PC,Program Counter)和指令寄存器 (IR,Instruction Register),中断寄存器以及用于存储器和I/O 模块 控制的寄存器。
7、存储器地址寄存器(MAR)、存储器数据寄存器(MBR )
第二章操作系统运行环境[1]
2.1处理机---指令系统
第二章操作系统运行环境[1]
中断和陷入(外中断和内中断) 的区别
(1) 中断是由与现行指令无关的中断信号触发 的,而陷入则是由处理器正在执行现行指令而 引起的
(2)中断处理程序提供的服务不是为当前程序所 需,而陷入处理程序提供的服务是为当前程序 所用
(3)CPU在两条机器指令之间才可以响应中断, 而在一条指令执行中可以响应陷入。
第二章操作系统运行环境[1]
分层的存储系统
典型的 访问时间
访问速度
1ns
快
2ns
10ns 10ms 100s 慢
寄存器 高速缓存
内存 磁盘 磁带
成本 典型的
容量
高
<1KB
4MB
512~2048MB
200~1000GB
低
400~800GB
第二章操作系统运行环境[1]
2.3多道程序环境
物理 实体
虚拟技术
移位与字符串指令
移位分算术、逻辑和循环移位; 字符串处理有字符串的传 送、比较、查询和转换。
I/O 类指令
用于启动外围设备,让主存和
外围设备之间交换数据。
第二章操作系统运行环境[1]
在多道程序设计环境中,从资源管理和控制程 序执行的角度出发,必须把指令系统中的指令 分作两类:
特权指令。
那些只能提供给操作系统的核心程序使用的指令,如启动 输入输出设备、设置时钟、控制中断屏蔽位、清内存、建 立存储键,加载PSW 等。
2)管态:管态比核态的权限低,在此状态下允许使用 一些用户态下不能使用的资源,但不能使用修改CPU 状态的指令。无核态时,管态执行核态的全部功能。
3)用户态:用户程序执行时CPU所处的状态。在此状 态下禁止使用特权指令,不能直接使用系统资源与改 变CPU状态,并且只能访问用户程序所在的存储空间。
程序性中断事件。例如,定点溢出,除数为0,地 址越界等。
外部中断事件。例如,时钟的定时中断,控制台发 控制信息等。
输入输出中断事件。例如,设备出错,传输结束等。
第二章操作系统运行环境[1]
自愿性中断事件
自愿性中断事件是正在运行的程序所期 待的事件。
这种事件是由于执行了一条访管指令而 引起的,它表示正在运行的程序对操作 系统有某种需求,一旦机器执行到一条 访管指令时,便自愿停止现行程序而转 入访管中断处理程序处理。例如,要求 操作系统协助启动外围设备工作。
第二章操作系统运行环境[1]
PSW寄存器的主要内容:
1)程序基本状态。包括:
(1)程序计数器:指明下一条执行的指令地址; (2)条件码:表示指令执行的结果状态; (3)处理机状态位:指明当前的处理机状态。
2)中断码。保存程序执行时当前发生的中断 事件。
3)中断屏蔽位。指明程序执行中发生中断事 件时,是否响应出现的中断事件。
每个CPU都有一套可 指令类型
指令描述
执行的专门指令集, 数据处理类指令 用于执行算术和逻辑运算
称为指令系统,大致
可以分为五类 :
转移类指令
如无条件转移、条件转移、计 数转移等用于改变指令执 行序列
数据传送类指令
用于在处理机的寄存器和寄存 器、寄存器和存储器单元、 存储器单元和存储器单元 之间交换数据
(1)请求操作系统服务 (2)实现CPU 和I/O 设备交换信息使CPU
与I/O 设备并行工作 (3)处理突发事件 (4)满足实时要求
第二章操作系统运行环境[1]
中断是指计算机在执行
期间,系统内发生任何
非寻常的或非预期的急 需处理时间,使得CPU
当前指令 下一条指令
暂时中断当前正在执行 中断
这组寄存器所存储的信息与程序的执行有很大 的关系,构成了处理机现场。
当暂停一个正在运行的程序,并启动另一个程 序时,操作系统必须保存所有的寄存器信息即 保存处理机现场信息,以便稍后继续运行该程 序时,可以把这些寄存器信息重新装入寄存器, 即恢复CPU现场。
第二章操作系统运行环境[1]
寄存器的类型:
条要执行的指令的地址保存
在程序计数器(PC)中;
开始
(2)执行当前指令,即从主
读入下一条 指令
执行当前指 令
结束
存储器中取出指令到指令寄 存器(IR)并执行指令,PC
指令的执行周期
将自动地增长或改变为转移
地址以指明下一条执行的指
令。
第二章操作系统运行环境[1]
2.1处理机---寄存器
由于指令的执行速度比访问内存的速度要快得 多,CPU中设置了一组寄存器,用来保存关键 变量和临时数据。
第二章操作系统运行环境[1]
2.2存储系统
理想的存储器应满足以下三个条件:
(1)存储器访问的速度应该极为迅速,至 少和CPU执行一条指令的速度相当;
(2)存储空间充分大,这样可以同时执行 的程序的数量和大小将不受限制;
(3)低成本。
而目前的技术无法同时满足以上三个目 标,于是存储系统采用分层的存储结构:
(4)虚拟(Virtual)性 所谓“虚拟”,是指通过某种技术 把一个物理实体变为若干个逻辑上的对应物。用于实现虚拟 的技术,称为虚拟技术。
第二章操作系统运行环境[1]
操作系统中实现虚拟技术的两 种方式:
(1)时分复用技术。时分复用,即分时使用方式。 虚拟处理机技术、虚拟设备技术都采用这种分时的方 式。在虚拟处理机技术中,利用多道程序设计技术, 把一台物理上的处理机虚拟为多台逻辑上的处理机, 在每台逻辑处理机上运行一道程序,使用户感觉到有 多台处理机,我们把用户感觉到的处理机成为虚拟处 理机。
第二章操作系统运行环境[1]
硬中断与软中断
上述的内中断与外中断(中断和陷入)要通 过硬件来产生中断请求,可以看作硬中 断。
软中断是不必由硬件发信号而能引发的 一种中断,它通常是通信进程之间用来 模拟硬中断的一种信号通信方式。
第二章操作系统运行环境[1]
中断优先级
当有多个中断同时发生时,中断装置根 据预先设置的中断优先级响应中断。
(2)空分复用技术。空分复用,对空间进行划分, 提高空间的利用率。虚拟磁盘技术、虚拟存储器技术 采用的是空分复用的方式。利用虚拟磁盘技术可以将 一个硬盘虚拟为多个虚拟磁盘,使得磁盘的使用方便 又安全。采用虚拟存储技术可以从逻辑上扩大内存的 容量。
第二章操作系统运行环境[1]
2.4中断技术
中断需求:
第二章操作系统运行环境[1]
程序状态字用来控制指令的执行顺序并且保留 和指示与程序有关的系统状态,其主要作用是 实现程序状态的保护和恢复。
每个正在执行的程序都有一个与其执行相关的 PSW,而每个处理机都设置一个程序状态字寄 存器。
一个程序占有处理机执行,它的PSW 将占有程 序状态字寄存器。
执行中断处理程序