第二章 操作系统的运行环境

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
下界 1000 1000
OS User 1 Jump 6000 将6000与上限地址 5000比较,越界则 越界中断
作业在主存中 的上、下限地址 上界 5000
6000
User 2
(2) 存储保护键: (由五位二进位) 其中最左四位是存储 键,最右一位是取保护标志位。 如图:
0 A块
0
1
0
1 取保护位
7 钥
注2:最右边的一位称为“取保护位”。当该位为0时,即使存 储键不匹配,也允许对该块内的数据进行读访问(取数据), 但不许进行写访问。当该位为1时,在键不匹配的情况下,禁止 对该块进行任何访问。
0010 存储块 1
取保护位
…… 0 0 1 0 ……
0 7 钥 11 Key 程序状态字
•只要键匹配,存取均可
PSW ––– 程序状态字,指示处理机状态。
条件码:反映指令执行后的结果特征。 中断屏蔽码:指出是否允许中断 (中断优 PSW包含: 先级) CPU的工作状态:管态还是目态。 IR:指令寄存器 MAR MBR IOAR IOBR
(2) M68000的程序状态字 (微机) 16位字 P20 PIC2-1
•键不匹配,则不可存 •是否可取要看保护位
0010
1
A块
0100 1
B块
0100 0
……
0 7
0010
……
11
C块 主存储器
程序状态字
举例: 存A,取A,均可以 (键Key匹配) 存B,取B,均不可以 (键不匹配,且取保护) 存C,不可以 (键不匹配) 取C,可以,因取保护位为0,即不保护取
15 T 自陷 中断位 (跟踪) 13 S CPU状态位 1:管态 0:目态 10 8 4 3 0
I2 I1 I0 中断屏蔽位 优先级 07
X N Z V C 负 结 溢 数 果 出 为 0 进 位 标 志 位

Trap 连机调试,排错用
条件码
ห้องสมุดไป่ตู้
(3) 不同的机器有不同的PSW,如:8088 (FLAG)
单个CPU ––– 单机系统
多个CPU ––– 多机系统
2. 特权指令 在多用户的多道程序设计环境中,计算 机的指令系统中的指令必须分为两部分
特权指令
非特权指令 特权指令
在单用户单任务的环境下, 对指令则不必进行划分.
定义:指令系统中那些只能由OS 使用的指令。 用途:启动外部设备,设置时钟,清内存等。 用户只能使用非特权指令,只有OS才能使用所有 指令(包括特权指令)。
“向量中断”方法的基本思 想
当CPU接受某优先级较高的中断请求时,该设备接 口给处理器发送一个具有唯一性的“中断向量”, 以标识该设备。这样,CPU就可根据“中断向量” 找到发送中断请求的设备,并做出相应的中断处理。
如果在同一中断级中的多个设备接口中同时都有中断请求 时,中断逻辑如何处理?
现代计算机普遍使用的是总线互连结构,即计算机中各个部件 连接到一组公共信息传输线上,该公共信息传输线称为总线
(1) 固定的优先数:每个设备接口给安排一个不同的、固定 的优先数顺序。例如:在PDP-11中是以该设备在总线中 的位置来定,离CPU近的设备,其优先数高于离CPU远 的设备。 (2) 轮转法:用一个表,依次轮转响应,这是一个较为公平 合理的方法。
化,这种I/O控制器称为通道
(3) 外部中断:如:时钟中断,操作员控制台中断,多机系统
中CPU到CPU通讯中断
开机、操作员选择执行任务、操作员对某项任务的监视工作等
(4) 程序性中断:程序中的问题引起的中断,如除法错误 中断,溢出中断,错误地使用指令等。
(5) 访管中断:是用户程序和操作系统之间唯一一个相通 的“门户”,用户程序可以通过访管指令引起中 断并调用操作系统相应的功能模块为其服务。 如:用户要求操作系统为其分配一块主存
CPU具体是通过什么方法,来识别处理器的状态?以及处 理器何以知道它要执行哪条指令? 4. 程序状态字 (PSW) 为了解决这些问题,所有的计算机都有若
干的特殊寄存器。同时还有一个专门的寄存器
用来指示处理器状态的,程序状态字。
(1) 用特殊的寄存器存放状态 PC ––– 程序计数器,指示下一条要执行的指令。
中断响应 CPU何时响应中断? 通常是在指令周期的最后时刻由CPU中的一个能检测中 断的机构(中断扫描机构)扫描中断寄存器,判断是否 有中断信号,如有则接受中断请求。
指令周期:CPU每取出并执行一条指令所需的全部时间。
CPU如何识别提出中断请求的设备或中断源? 方法一:用软件指令去查询各个设备接口。缺点:费时 方法二:“向量中断”方法。
4. 存储保护 存放在主存的用户程序和操作系统,以及它们 的数据,很可能受到正在CPU上运行的某用户程序
的有意或无意的破坏,这可能会造成十分严重的后
果。所以对主存中的信息加以严格的保护,使操作 系统及其它程序不被错误的操作所破坏,是其正确 运行的基本条件之一。
几种常用的存储保护方法: (1) 界地址寄存器 ––– 产生越界中断(存贮器保护中断)。 具体作法是:在CPU中设置一对界限寄存器来存放 该用户作业在主存中的下限和上限地址。当CPU访 问主存时,将访问地址与界限寄存器的内容进行比 较,以判断是否越界。
这五类中断又可按中断方式不同划为: 自愿中断:是正在运行的程序期待的事件,这种事
件是由于执行了一条访管指令而引起的。
强迫性中断:是由随机事件引起的,并非由程序设 计人员事先安排的。
中断优先级 目前多数微型处理机有着多级中断系统,在多级中断 系统中,很可能同时有多个中断请求,这时CPU接受中断 优先级为最高的那个中断,忽略其中断优先级较低的那些 中断。 在大型机中,中断优先级按中断类型划分,以机器故 障中断的优先级最高,程序中断和访问管理程序中断次之, 外部中断再次之,输入输出中断的优先级最低。
出设备的压力。因为,缓冲区信息可共享且可重用。
要点回顾
• 指令的划分 特权指令和非特权指令 • 程序运行时的两种状态. 管态和目态 • 程序状态字主要包含哪三方面信息. 条件码 中断屏蔽码
CPU工作状态 界地址寄存器:产生越界中断 • 存储保护的方法. 存储保护键:对比程序状态字和存储块 的存储键号,相同则可存取,不同则不可 存,是否可取要看”取保护位”. • 使用缓冲区的根本原因.
中断的类型 中断的种类很多,例如IBM-PC就有256种不同的 中断。一般中断按其功能来分可有以下几大类: (1) 机器故障中断:电源故障中断,机器电路检验错误中断 (2) 输入/输出中断:用以反映输入输出设备和通道的数据传输
状态.如:键盘、显示器、磁盘等I/O中断.
为了在处理I/O请求时进一步减少中断处理次数和处理器的占用时间, 把对外设的管理和控制工作从CPU中分离出来,使I/O控制器更具智能
互不影响 ––– 保
护机构 操作系统空间和 用户程序空间
主存 OS
OS 空间
用户空间
2. 存贮器类型
RAM ––– random access memory 可读写,随机存贮器
ROM ––– read only memory 只读存贮器(不可改程序存 贮) BIOS
PROM
可编程写入,用有特殊PROM写入器 EPROM 可改写ROM,用特殊和紫外线照射芯片
2.1.3 缓冲技术 上章已讲到,缓冲技术可以用来提高 CPU利用率。
缓冲区是外部设备在进行数据传输期间 专门用来暂存这批数据的主存区域。
使用缓冲区的根本原因: CPU处理数据的速度与设备传输数据的速度不相匹 配,因此,用缓冲区来缓解一下期间的速度矛盾。 为何不把用户工作区直接作为缓冲区? 首先,当工作区从(向)外部设备输入数据(输出数据) 时,工作区将被长期占用而使用户无法使用。 其次,为了便于对缓冲区的管理,缓冲区往往是与设 备相联系的,而不直接同用户相联系。 最后,使用独立的缓冲区,而不把用户工作区作为缓冲 区,可以减少输入输出的次数,以减轻对通道和输入输
2.1.4 中断技术
中断简介: 定义:CPU对系统中发生的异步事件的响应 异步事件:指无一定时序关系的随机发生的事件。 例如你正在看书,此时电话响了(异步事件),于是你用 书签记住正在看的那一页(中断点),再去接电话(响应 异步事件并进行处理),接完电话后再从被打断的那页 书继续向下看(返回原程序的中断点执行). 关于中断的几个概念: 中断源(中断事件):引起中断的那些事件
目态(用户态)
用户程序运行态,只允许访问用户程序自己 的存贮区域,如果用户程序在执行时,企图访问 OS 所在的区域或想使用某个特权指令 (如改变指 令计算器的内容),将立即被捕俘,而被迫中止执 行,然后由OS 处理这一事件,这样保证了OS 的 权利和使其程序不会被破坏。
当处理机处在目态中,不可使用特权指令。
第二章 操作系统的运行 环境
§2.1 硬件环境
OS 裸机 (硬件) dos. 应用程序
任何系统软件都是硬件功能的延伸,并且 都是建立在硬件的基础上,离不开硬件设 备的支持.而操作系统更是直接依赖于硬 件条件,与硬件的关系尤为密切.因此,本节 主要讨论操作系统要用到的基本的硬件 技术和概念.
2.1.1 中央处理机 (CPU) 1. OS 作为一个程序要在CPU上运行
……
0010
……
程序状态字
0 7 钥 11 这样每当CPU访问主存时,都将该主存块的存储键与程序关键 字中的钥进行比较。如果相匹配,则允许进行访问。
注1:存储键为0号时,称为“万能键”,此时即使PSW中钥场 的存储键号与要访问的存储块的存储键不相匹配,也可进行访 问。
……
0
0000
……
11
程序状态字 “万能键”
存储键,取0-15 0 1 0 0 1
B块 0 1 0 0 0
C块
主存储器
存储键的使用方法:
当一个用户作业被允许进入主存时,操作系统分给它唯一的不 与其他作业相同的存储键号(1-15),并将分配给该作业的各 存储块的存储键也设置成同样的键号。
0010 存储块 1
当作业被操作系统挑选到CPU上运行时,操作系统同时将它的 存储键号放入程序状态字PSW的存储键场(钥场)中。
指出CPU是否接受特定通道的中断。 供存储保护使用 E是机器的控制方式,M位是机器校验方式位,W位是等 待状态位,P位是处理器工作状态位(0管态、1目态)。 接受中断的编码信息 供程序员回溯指令用
含有条件码的当前值 指出CPU是否接受某种程序性中断
指出将要被执行的下一条指令的地址
2.1.2 主存储器 (支持OS运行的硬件环境中一个重要方面) 1. 一个作业必须把它的程序和数据存放在主存 中才能运行。 多道程序放入,
中断处理程序:处理中断事件的程序
中断具有的作用: (1) 能充分发挥处理机的使用效率:因为输入输出设备 可以用中断的方式同CPU通讯,报告其完成CPU所 要求的数据传输的情况和问题,这样可以免除CPU 不断地查询和等待,从而大大提高处理机的效率。
(2) 提高系统的实时处理能力:因为具有较高实时处理 要求的设备,可以通过中断方式请求及时处理,从 而使处理机立即运行该设备的处理程序。
RAM和ROM的用途:
8K基本输入/出系统 程序BIOS
ROM
长驻内存的模块
例如:
IBM-PC的基 本系统中有 48KB的ROM
RAM
随机存取的用 户程序和数据
40K ROM
32KB CBASIC 解释程序
8KB 空闲
内存分区
3. 存储分块 存储的最小单位称为“二进位”,它包含的信息 为0或1。存储器最小单位编址单位是字节,有8位。 两个字节组成“ 字”。 把存储器分为“ 块” 便于管理分配,在为用户分 配主存空间时,以块为最小单位: 16字节(一块) ––– PC机 64字节(一块) ––– PDP-11机 2k字节(一块) ––– IBM370机、IBM大型机
15
……
10
O D T S Z 溢去 跟 符 零 出向 踪 号 ( 增 减 ) A 辅 助 进 程 P 奇 偶 C 进 位
IBM 370 大型机的PSW程序状态字 P21 PIC2-2
系统屏蔽 钥 EMWP 中断码 ILC CC 程序屏蔽 指令地址 0 7 11 15 31 33 35 39 63位
CPU如何知道什么时候可以运行特权指令? 3. 程序运行有两种状态 CPU有时执行用户程序,有时执行操作系统的 程序。如何识别当前的使用者是操作系统还是一般 用户,这赖于处理机状态的标识,它将处理机工作 状态划分为:管态、目态。 管态(系统态) 一般指操作系统管理程序运行的状态 简 称管态,即OS 运行态,此时可使用特权指令和 非特权指令。
相关文档
最新文档